본문 바로가기
Coding Test/SQL Coding Test

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

by nam_ji 2024. 10. 27.

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

문제

  • 여성 회원의 정보를 담은 MEMBER_PROFILE 테이블이 있습니다.
  • MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 문제입니다.
  • 이때, 전화번호가 NULL인 경우 출력대상에서 제외시키고, 결과는 회원ID를 기준으로 오름차순 정렬합니다.


프로그래머스 코드

  • 우선 SELECT 뒤에 조회하고 싶은 컬럼들을 작성합니다.
  • 이후 FROM을 이용하여 조회하고 싶은 컬럼이 담긴 테이블명을 작성하고
  • WHERE문을 이용하여 조회에 대한 조건을 작성합니다.
  • DATE_OF_BIRTH가 3월인 사람은 month함수로 DATE_OF_BIRTH의 월에 대한 값만 가져오도록 하고 03이 맞는지 체크합니다.
  • 그리고 여성 회원을 찾아야 하기 때문에 GENDER의 값이 W인지 체크합니다.
  • 그리고 마지막으로 전화번호가 NULL이면 조회 대상에서 제외해야 하기 때문에 TLNO를 IS NOT NULL로 NULL 값이 아닌 값 조회하도록 합니다.
  • 이렇게 3가지의 조건을 걸어두고 마지막으로 ORDER BY를 사용해서 MEMBER_ID 기준으로 ASC
  • 즉, 오름차순 하도록 설정해서 문제를 해결했습니다.
-- 코드를 입력하세요
SELECT
    MEMBER_ID,
    MEMBER_NAME,
    GENDER,
    DATE_FORMAT(DATE_OF_BIRTH, "%Y-%m-%d") AS DATE_OF_BIRTH
FROM MEMBER_PROFILE
WHERE month(DATE_OF_BIRTH) = '03' AND GENDER = 'W' AND TLNO IS NOT NULL
ORDER BY MEMBER_ID ASC;