본문 바로가기
책갈피

SQL쿼리문 잘하시는분......

영휴는마녀 |2007.12.04 11:24
조회 389 |추천 0

1. 아산병원에 모든 부서의 이름과 그 부서에 보직을 맡고 있는의사의 이름을 출력하고 그 의사가 속한 센터의 이름을 보이시오.

(의사가 속한 센터가 없으면 null값으로 출력하시오.)


SQL> select p_name as postName, d_name as doctorName, c_name as centerName
  2  from center c, positionDC DC, doctor d, assign a, post p
  3  where c.c_no=DC.c_no
  4  and d.d_no=DC.d_no
  5  and p.p_no=a.p_no
  6  and d.d_no=a.d_no;

 

 

// 쿼리문을 수정해야합니다.

// 모든부서에 보직되어있는 의사가 있습니다.

// 전무 and로 연결해서 전체를

충족시키는 값만 나오는 것 같습니다.

 

// 다른방법으로 쿼리문을 쓰는 방법을 알려주세요 ..

// 센터에 속한 의사가 없으면 센터의 밑의 값이 null로 나올수있도록 뭐리문을 쓰는 방법을 알고싶습니다.

 

POSTNAME           DOCTORNAME CENTERNAME
------------------ ---------- -------------------------
총무팀             최수정     건강증진센터
인사팀             오현미     뇌졸중센터
노사협력팀         임현영     담석센터
경리팀             임오수     당뇨병센터
원무팀             임시연     선천성심장병센터
적정진료팀         임비민     세포치료센터
물류팀             이현만     소화기병센터
시설팀             장화빈     스포츠건강의학센터
후생사업팀         최현빈     심장병센터
사회복지팀         이재민     암센터
건설팀             김광수     유전체연구센터

POSTNAME           DOCTORNAME CENTERNAME
------------------ ---------- -------------------------
운영팀             이정표     임상연구센터
건진운영팀         최정봉     임플란트센터
교육수련팀         서정권     장기이식센터
기획팀             이봉학     전립선센터
업무개선팀         이보숙     중환자실
진료지원팀         소현춘     태아치료센터
의료정보팀         이재홍     파킨슨병센터


18 rows selected.

 

 

 

 


2. 각 센터의 이름과 그 센터의 속한 의사의 수 간호사의 수를 보이시오.

SQL> select distinct c.c_name as centerName, count(d_name) as doctorNUM, count(n_name) as nurseNUM
  2  from nurse n, positionNC NC, center c, positionDC DC, doctor d
  3  where n.n_no=NC.n_no
  4  and c.c_no=NC.c_no
  5  and c.c_no=DC.c_no
  6  and d.d_no=DC.d_no
  7  group by c.c_name;

 

// 여기서도 문제가 잇습니다.

// 센터에 속한의사는 4명이고 간호사는 3명이지만

// 위의 쿼리문으로 출력을 하게 되면

// 4*3이 곱한 값이 나오게 됩니다.

 

//한 센터에속한

    의사의 수가 4명 간호사의 수가 3명이 나오도록

//쿼리문을 고쳐주세요.. ㅠㅠ  

 

 

CENTERNAME                 DOCTORNUM   NURSENUM
------------------------- ---------- ----------
건강증진센터                      12         12
뇌졸중센터                        12         12
담석센터                          12         12
당뇨병센터                        12         12
선천성심장병센터                  12         12
세포치료센터                      12         12
소화기병센터                      12         12
스포츠건강의학센터                12         12
심장병센터                        12         12
암센터                            12         12
유전체연구센터                    12         12

CENTERNAME                 DOCTORNUM   NURSENUM
------------------------- ---------- ----------
임상연구센터                      12         12
임플란트센터                      12         12
장기이식센터                      12         12
전립선센터                        12         12
중환자실                          12         12
태아치료센터                      12         12
파킨슨병센터                      12         12

18 rows selected.

추천수0
반대수0

공감많은 뉴스 시사

더보기

뉴스 플러스