행궁동 데이터 엔지니어

반응형

프로그래머스 SQL 문제 중 String, Date 카테고리에 속한 문제를 풀어봤습니다.

2가지 방법으로 풀어봤고 첫 번째 풀이는 CASE 문, 두 번째는 IF 문을 활용했습니다.

 

주요 사용 연산자와 함수 : CASE, IF, LIKE, ORDER BY

 

https://programmers.co.kr/learn/courses/30/lessons/59409

 

코딩테스트 연습 - 중성화 여부 파악하기 | 프로그래머스

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALS

programmers.co.kr

중성화 여부 파악하기 문제는 SEX_UPON_INTAKE 컬럼의 데이터에 NEUTERED 또는 SPAYED라는 문자열이 있으면 중성화 여부 'O'가 출력되도록 하는 문제입니다.

 

각 풀이에서의 핵심은 CASE, IF 문의 사용입니다.

 

1번 풀이 : CASE 문

  • CASE WHEN (SEX_UPON_INTAKE LIKE '%NEUTERED%' OR SEX_UPON_INTAKE LIKE '%SPAYED%') THEN 'O' ELSE 'X' END

2번 풀이 : IF 문

  • IF(SEX_UPON_INTAKE LIKE '%NEUTERED%' OR SEX_UPON_INTAKE LIKE '%SPAYED%','O','X')

전체 쿼리문은 아래에 첨부합니다.

 

참고 :
1. 이투디의 개발블로그, MySQL 쿼리에서 조건문, https://tudiiii.github.io/sql1/
2. 이투디의 개발블로그, [프로그래머스 SQL] 중성화 여부 파악하기, https://tudiiii.github.io/sql_pr5/
반응형

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band