Programing 프로그래밍/코딩테스트 문제풀이
SQL 고득점 Kit - String, Date (6)
옌炎
2022. 1. 10. 10:28
728x90
String, Date
출제 빈도 낮음, 평균 점수 낮음, 문제 세트 5개
MySQL 기준으로 풀이하였습니다.
(1) 루시와 엘라 찾기 (Level 2)
SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS
WHERE NAME IN ('Lucy', 'Ella', 'Pickle', 'Rogan', 'Sabrina', 'Mitty')
(2) 이름에 el이 들어가는 동물 찾기 (Level 2)
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE ANIMAL_TYPE = 'Dog'
AND NAME LIKE '%el%'
ORDER BY NAME
(3) 중성화 여부 파악하기 (Level 2)
SELECT ANIMAL_ID,
NAME,
IF(SEX_UPON_INTAKE IN ('Neutered Male', 'Neutered Female', 'Spayed Male', 'Spayed Female'),
'O', 'X') AS 중성화
FROM ANIMAL_INS
(4) 오랜 기간 보호한 동물 (2) (Level 3)
SELECT INS.ANIMAL_ID, INS.NAME
FROM ANIMAL_INS INS
JOIN ANIMAL_OUTS OUTS ON INS.ANIMAL_ID = OUTS.ANIMAL_ID
ORDER BY OUTS.DATETIME-INS.DATETIME DESC
LIMIT 2
(5) DATETIME에서 DATE로 형 변환 (Level 2)
SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') AS 날짜
FROM ANIMAL_INS
3번에서 IF문 쓰는 법 까먹어서 검색해서 풀었습니다.
- IF(조건, True일 때 값, False일 때 값)
5번에서는 시간 바꾸는 법 몰라서 검색해서 알아냈습니다.
- DATE_FORMAT(DATETIME, '%Y-%m-%d')
이렇게 SQL 고득점 Kit를 마무리하겠습니다.
다음 글에서는 프로그래머스에서 남은 SQL 문제가 두 문제 있던데 그걸 풀겠습니다.
728x90