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

수이·2025년 2월 7일
0

🟢 데일리퀘스트

목록 보기
12/19
post-thumbnail

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

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

⬇️ 내가 작성한 것

SELECT COUNT(*) AS cnt_doctors 
FROM doctors
WHERE DATEDIFF('2025-02-07', hire_date) >= 5 * 365

⬇️ 정답

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

+ DATESUB

특정 날짜에서 지정한 기간(년, 월, 일 등)을 빼는 MySQL 함수

  • 기본 문법
DATE_SUB(날짜, INTERVAL 빼고 싶은 값 단위)
  • 사용가능 단위
    YEAR, MONTH, DAY, HOUR, MINUTE, SECOND

    조합해서도 사용 가능
    ex) 2 YEAR 3 MONTH 10 DAY 5 HOUR

  1. doctors 테이블에서 각 의사의 근무 기간을 계산하는 쿼리를 작성해주세요!
SELECT name,
	   DATEDIFF(CURDATE(), hire_date) AS work_days
FROM doctors

0개의 댓글

관련 채용 정보