[프로그래머스/SQL] 3월에 태어난

문제 설명

다음은 레스토랑 리뷰 사이트의 회원 정보입니다. 회원 프로필 테이블. 회원 프로필 테이블은 다음과 같습니다 회원번호, 회원 이름, TLNO, 성별, DATE_OF_BIRTH는 회원ID, 회원이름, 회원연락처, 성별, 생년월일을 의미합니다.

열 이름유형Nullable

회원 번호 VARCHAR(100) 잘못된
회원 이름 VARCHAR(50) 잘못된
TLNO VARCHAR(50) 진실
성별 VARCHAR(1) 진실
생일 날짜 진실

문제

회원 프로필 테이블에서 생일이 3월인 여성회원의 아이디, 이름, 성별, 생년월일을 조회하는 SQL문을 작성하시오. 이때 전화번호가 NULL이면 출력 대상에서 제외하고 회원 ID를 기준으로 오름차순으로 결과를 정렬한다.


회원 프로필 테이블이 다음과 같은 경우

MEMBER_IDMEMBER_NAMETLNOGENDERDATE_OF_BIRTH

[email protected] 이지호 01076432111 1992-02-12
[email protected] 김지윤 01032324117 1992-02-22
[email protected] 김지훈 01023258688 1993-02-23
[email protected] 박서연 01076482209 1993-03-16
[email protected] 윤서연 1994-03-19

SQL을 실행하면 다음과 같아야 합니다.

MEMBER_IDMEMBER_NAMEGENDERDATE_OF_BIRTH

[email protected] 박서연 1993-03-16

주의

날짜 형식 DATE_OF_BIRTH는 응답할 예와 일치해야 합니다.


SQL안한지 오래되서 올블랙

첫 번째 어려움은 날짜 유형에서 3월에 있는 것만 선택하는 것입니다.

두 번째 어려움은 DATE_OF_BIRTH 형식을 변경하는 것입니다.

TO_CHAR 공부를 더 해야 할 것 같아요

SELECT MEMBER_ID, MEMBER_NAME, GENDER, 
	   TO_CHAR(DATE_OF_BIRTH, 'YYYY-MM-DD') DATE_OF_BIRTH
FROM MEMBER_PROFILE
WHERE GENDER = 'W' and TLNO is NOT NULL and TO_CHAR(DATE_OF_BIRTH, 'MM') = '03'
ORDER BY MEMBER_ID