이제, 아래와 같은 doctors(의사) 테이블이 있습니다.
|
id
|
name
|
major
|
hire_date
|
|
1
|
르탄이
|
피부과
|
2018-05-10
|
|
2
|
배캠이
|
성형외과
|
2019-06-15
|
|
3
|
구구이
|
안과
|
2020-07-20
|
30번 문제
- doctors 테이블에서 전공(major)가 성형외과인 의사의 이름을 알아내는 쿼리를 작성해주세요!
조건 1. 전공이 성형외과인 의사 이름 알아내기!(WHERE)
답)
SELECT name
FROM doctors
WHERE major='성형외과';
31번 문제
- doctors 테이블에서 각 전공 별 의사 수를 계산하는 쿼리를 작성해주세요!
조건 1. 각 전공별(GROUP BY)
조건 2. 의사 수(SUM())
답)
SELECT major, SUM(name) '의사 수'
FROM doctors
GROUP BY 1;
32번 문제
- doctors 테이블에서 현재 날짜 기준으로 5년 이상 근무(hire_date)한 의사 수를 계산하는 쿼리를 작성해주세요!
조건1. 5년 이상 근무(WHERE)
조건1. 의사 수(SUM())
답)
SELECT SUM(name)
FROM doctors
WHERE DATEDIFF(CURDATE(), hire_date) > 365*5;
*** DATEDIFF(날짜1,날짜2) : 날짜1에서 날짜2을 뺀 일 수 계산 함수.
*** CURDATE() : 오늘 날짜
33번 문제
- doctors 테이블에서 각 의사의 근무 기간을 계산하는 쿼리를 작성해주세요!
조건1. 각 의사의 근무 기간 계산( DATEDIFF(날짜1,날짜2))
답)
SELECT name,
CONCAT(DATEDIFF(CURDATE(), hire_date)/12,' 개월') AS '근무 개월',
CONCAT(DATEDIFF(CURDATE(), hire_date),' 개월') AS '근무 일수'
FROM doctors;
'내일배움캠프 STEP 2. 속도에 맞춰 나아가기 > SQL 기초' 카테고리의 다른 글
| 10) 이젠 테이블이 2개입니다. (0) | 2024.10.18 |
|---|---|
| 9. 아프면 안됩니다! 항상 건강 챙기세요! (0) | 2024.10.18 |
| 7. 랭크게임 하다가 싸워서 피드백 남겼어요.. (0) | 2024.10.14 |
| 6. 팀 프로젝트 열심히 했으니 다시 놀아볼까요?! (0) | 2024.10.14 |
| 5. 공부하다보니 팀 프로젝트 시간이 왔어요! (1) | 2024.10.11 |