알고리즘/PROGRAMMERS

3월에 태어난 여성 회원 목록 출력하기(DB)

현대타운301 2024. 3. 22. 20:03

 

 


 

문제 설명

 

 

 

입출력 예시

 

 

요약

생일이 3월인 여성 회원의 1) 아이디 2) 이름 3) 성별 4) 생년월일 출력

 


 

풀이

 

접근 방식

1. 생년월일 형식 바꾸기

  → TO_CHAR(DATE_OF_BIRTH, 'YYYY-MM-DD') : '년-월-일' 형태로 변경

 

2. 3월에 태어난 회원 구하기

  → SUBSTR(DATE_OF_BIRTH, 6, 2) : YYYY-MON-DD에서 MON 가져와서 비교

  * SUBSTR()의 경우 포맷 변경이 없었기 때문에 달에 해당하는 부분이 VARCHAR(JAN, FEB, MAR 등) 형태

 

3. 나머지 조건 맞추기

  → TLNO IS NOT NULL, GENDER = 'W'

 


 

쿼리문리뷰

 

-- 코드를 입력하세요
SELECT MEMBER_ID, MEMBER_NAME, GENDER, TO_CHAR(DATE_OF_BIRTH, 'YYYY-MM-DD')	--TO_CHAR()로 포맷 및 타입변경
FROM MEMBER_PROFILE
-- SUBSTR()로 MM 비교(TO_CHAR()에선 포맷을 변경했지만, 여기선 SUBSTR로 잘라왔기 때문에 MM 형태가 아니라 VARCHAR 타입의 'MAR'과 같은 형태
WHERE TLNO IS NOT NULL AND GENDER = 'W' AND SUBSTR(DATE_OF_BIRTH, 4, 3) = 'MAR'
ORDER BY MEMBER_ID ASC;	-- ID 기준 오름차순 정렬