본문 바로가기
SQL

[SQL] 프로그래머스 - SELECT / 3월에 태어난 여성 회원 목록 출력하기

by pearhyunjin 2024. 4. 18.

 

 

프로그래머스 SQL 고득전 kit를 풀어보고 정리한 내용입니다.

맞춘 정답과 틀린 경우 생각해내지 못한 문법 위주로 작성하였습니다.

정리 내용 출처는 아래를 참고해 주세요.

 


 

Lv.2 3월에 태어난 여성 회원 목록 출력하기

 

 

작성 답안

 

MEMBER_PROFILE 테이블에서 각각 아이디, 이름, 성별, 생년월일 칼럼을 가져온다. 이때, 생년월일이 DATE 타입으로만 되어있기 때문에 DATE_FORMAT()함수를 통해 형태를 변환해주고 명칭을 지정해준다.

3월생을 찾기 위해 위의 과정을 통해 YY-mm-dd 형태로 바뀐 생년월일 데이터를 LIKE를 이용하여 년도와 일 수는 무엇이든 상관없이 3월달만 해당하면 조건을 만족하도록 만들어준다. 이후에 여성을 출력하기 위해 GENDER 칼럼에 조건을 주고, 전화번호 데이터가 null이면 안되기 때문에 IS NOT NULL을 이용해 처리해주었다. 

마지막으로 아이디를 기준으로 정렬시켜주었다. 오름차순이기에 정렬 방식은 생략하였다.

SELECT 
    MEMBER_ID, 
    MEMBER_NAME, 
    GENDER, 
    DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') AS DATE_OF_BIRTH
FROM MEMBER_PROFILE
WHERE DATE_OF_BIRTH LIKE '%-03-%'
    AND GENDER = "W"
    AND TLNO IS NOT NULL
ORDER BY MEMBER_ID;