SQL연습문제

8) LOL을 하다가 홧병이 나서 병원을 찾아왔습니다.

Twisted 2024. 8. 28. 16:33

이제, 아래와 같은 doctors(의사) 테이블이 있습니다.

id,  name,  major,  hire_date

1 르탄이 피부과 2018-05-10
2 배캠이 성형외과 2019-06-15
3 구구이 안과 2020-07-20
  1. doctors 테이블에서 전공(major)가 성형외과인 의사의 이름을 알아내는 쿼리를 작성해주세요!
  2. doctors 테이블에서 각 전공 별 의사 수를 계산하는 쿼리를 작성해주세요!
  3. doctors 테이블에서 현재 날짜 기준으로 5년 이상 근무(hire_date)한 의사 수를 계산하는 쿼리를 작성해주세요!
  4. doctors 테이블에서 각 의사의 근무 기간을 계산하는 쿼리를 작성해주세요!

 

A1.

SELECT name, major
FROM doctors
WHERE major = '성형외과';

 

 

A2.

SELECT major, COUNT(*) count_major
FROM doctors
GROUP BY major;

 

 

A3.

SELECT COUNT(*) FROM doctors
WHERE hire_date <= DATE_SUB( CURDATE(), INTERVAL 5 YEAR);

 

 

A4.

SELECT name, DATEDIFF(CURDATE(), hire_date ) AS working_peroid
FROM doctors;