NAVER

질문 데이터베이스 조인 질의어 질문 내공 100
bl**** 조회수 298 작성일2010.12.03

테이블 구조와 데이터 를 올려드릴테니 조인 질의어좀 2~나 3개 답변해드리면 바로 내공 100

찍어드려요 급해용~

 

 

CREATE TABLE 의사
(관리번호 INTEGER  NOT NULL 
,성명  VARCHAR(20) 
,나이  INTEGER 
,주소  VARCHAR(30) 
,주민등록번호 VARCHAR(30) 
,연락처  VARCHAR(30)
,PRIMARY KEY(관리번호)
);

CREATE TABLE 고객
(고객번호      INTEGER  NOT NULL
,성명       VARCHAR(30)
,나이  INTEGER
,주소       VARCHAR(100)
,주민등록번호 VARCHAR(30)
,연락처  VARCHAR(30)
,관리번호 INTEGER  NOT NULL  
,PRIMARY KEY(고객번호)
,FOREIGN KEY(관리번호) REFERENCES 의사(관리번호)
);

CREATE TABLE 진료
(진료명    VARCHAR(20) NOT NULL
,담당자  VARCHAR(20) 
,예약시간 DATETIME 
,고객번호 INTEGER  NOT NULL
,관리번호 INTEGER  NOT NULL 
,PRIMARY KEY(진료명, 고객번호, 관리번호)
,FOREIGN KEY(고객번호) REFERENCES 고객(고객번호)
,FOREIGN KEY(관리번호) REFERENCES 의사(관리번호)
);

----------------------------------------------------------------------------------------

 

USE Clinic;

-- 의사 데이터 삽입
INSERT INTO 의사 VALUES (11,'김의사',30,'대전 서구','111111-1111111','042-111-1111');
INSERT INTO 의사 VALUES (22,'박의사',28,'대전 서구','222222-2222222','042-222-2222');
INSERT INTO 의사 VALUES (33,'최의사',40,'대전 동구','333333-3333333','042-333-3333');
INSERT INTO 의사 VALUES (44,'강의사',43,'대전 서구','444444-4444444','042-444-4444');
INSERT INTO 의사 VALUES (55,'장의사',37,'대전 중구','555555-5555555','042-555-5555');
INSERT INTO 의사 VALUES (66,'주의사',33,'대전 중구','666666-6666666','042-666-6666');
INSERT INTO 의사 VALUES (77,'엄의사',45,'대전 동구','777777-7777777','042-777-7777');
INSERT INTO 의사 VALUES (88,'개의사',45,'대전 동구','888888-8888888','042-888-8888');
INSERT INTO 의사 VALUES (99,'다의사',45,'대전 서구','999999-9999999','042-999-9999');
INSERT INTO 의사 VALUES (101,'정의사',45,'대전 중구','101010-1010101','042-101-1010');


-- 고객 데이터 삽입
INSERT INTO 고객 VALUES (1,'허영무',22,'포항','123456-7894561','042-111-2222',11);
INSERT INTO 고객 VALUES (2,'배윤환',23,'대구','456123-7418523','042-888-5555',22);
INSERT INTO 고객 VALUES (3,'김웅빈',24,'서울','159624-7514525','042-999-4444',33);
INSERT INTO 고객 VALUES (4,'엄경식',24,'부산','176324-8554628','042-877-6654',44);
INSERT INTO 고객 VALUES (5,'최병문',25,'울산','965475-4511388','042-753-1196',55);
INSERT INTO 고객 VALUES (6,'장근배',23,'대전','731854-1834972','042-119-4568',66);
INSERT INTO 고객 VALUES (7,'김상수',25,'충북','445126-6300245','042-551-0249',77);
INSERT INTO 고객 VALUES (8,'김기봉',30,'충남','881250-7041605','042-450-3002',88);
INSERT INTO 고객 VALUES (9,'최현호',30,'진도','994512-7531594','042-611-1556',99);
INSERT INTO 고객 VALUES (10,'김병준',22,'구미','943820-4187965','042-412-4775',101);


-- 진료 데이터 삽입
INSERT INTO 진료 VALUES ('암','김의사','2010-11-29',1,11);
INSERT INTO 진료 VALUES ('감기','박의사','2010-11-29',2,22);
INSERT INTO 진료 VALUES ('폐렴','최의사','2010-11-30',3,33);
INSERT INTO 진료 VALUES ('백혈병','강의사','2010-10-20',4,44);
INSERT INTO 진료 VALUES ('간암','장의사','2010-10-20',5,55);
INSERT INTO 진료 VALUES ('암','주의사','2010-11-25',6,66);
INSERT INTO 진료 VALUES ('감기','엄의사','2009-10-21',7,77);
INSERT INTO 진료 VALUES ('폐렴','개의사','2009-09-15',8,88);
INSERT INTO 진료 VALUES ('폐렴','다의사','2009-10-15',9,99);
INSERT INTO 진료 VALUES ('간암','정의사','2008-08-20',10,101);

 

 

부탁드립니다~

프로필 사진

답변자님,

정보를 공유해 주세요.

1 개 답변
1번째 답변
프로필 사진
맑은하늘
물신
데이터베이스 5위, 주식, 증권, 베이직 분야에서 활동
본인 입력 포함 정보

/*

일단 그냥 두개 만들어 봤어요..

도움이 되길 바래요~! ^^*

*/

 

 

-- 의사별관리환자수1

select  의사.관리번호 as 의사번호

             , 의사.성명 as 의사이름

             , COUNT(*) as 환자수

from 의사 inner join 진료 on 의사.관리번호=진료.관리번호

group by 의사.관리번호,의사.성명

order by 의사.성명   

 

 

-- 의사가진료하는환자이름과진료명,예약시간출력 (의사이름,환자이름,진료명,예약시간)

 

select  의사.성명 as 의사이름

       , 고객.성명 as 환자이름

       , 진료.진료명 as 진료명

       , 진료.예약시간 as 예약시간

      

from 의사 inner join 진료  on 의사.관리번호=진료.관리번호

                    inner join 고객  on 진료.고객번호=고객.고객번호

order by 의사.성명   

2010.12.03.

  • 채택

    질문자가 채택한 답변입니다.

도움이 되었다면 UP 눌러주세요!
UP이 많은 답변일수록 사용자들에게 더 많이 노출됩니다.