문제
입력 코드
1. CASE
SELECT
ANIMAL_ID, NAME,
(CASE
WHEN SEX_UPON_INTAKE LIKE '%Neutered%' THEN 'O'
WHEN SEX_UPON_INTAKE LIKE '%Spayed%' THEN 'O'
ELSE 'X'
END) AS '중성화'
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;
2. IF
SELECT
ANIMAL_ID, NAME,
IF(SEX_UPON_INTAKE LIKE '%NEUTERED%'
OR SEX_UPON_INTAKE LIKE '%SPAYED%','O','X') AS '중성화'
FROM ANIMAL_INS
ORDER BY ANIMAL_ID ASC;
3. 정규식
SELECT
ANIMAL_ID, NAME,
IF(SEX_UPON_INTAKE REGEXP ('Neutered|Spayed'),'O','X') AS 중성화
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;
4. LOCATE
SELECT ANIMAL_ID, NAME,
IF(LOCATE("Intact", SEX_UPON_INTAKE), "X", "O") AS 중성화
FROM ANIMAL_INS;
LOCATE(substr, str, [pos]) 함수
- 검색하고자 하는 서브 스트링 substr을 str에서 검색하고, 해당 substr이 나타나는 위치를 반환함
- 만약 substr이 str에 없는 경우 0을 반환함
- pos는 선택적으로 넣을 수 있는 값으로, 해당 인자에 값을 주게 되면 해당 인자의 위치에서부터 검색을 시작함
코드 설명
#SELECT #CASE #WHEN #ELSE #LIKE #ORDER BY #IF #REGEXP #LOCATE
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/59409
'SQL' 카테고리의 다른 글
#47. STRING, DATE : 카테고리 별 상품 개수 구하기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.12 |
---|---|
#46. STRING, DATE : DATETIME에서 DATE로 형 변환 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.12 |
#44. STRING, DATE : 이름에 el이 들어가는 동물 찾기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.11 |
#43. STRING, DATE : 루시와 엘라 찾기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.10 |
#42. STRING, DATE : 조건에 부합하는 중고거래 상태 조회하기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.10 |