문제 설명
입출력 예시
요약
생일이 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 기준 오름차순 정렬
'알고리즘 > PROGRAMMERS' 카테고리의 다른 글
뉴스 클러스터링(Lv.2) (0) | 2024.03.24 |
---|---|
상품 별 오프라인 매출 구하기(DB) (0) | 2024.03.22 |
숫자 문자열과 영단어(Lv.1) (0) | 2024.03.22 |
비밀지도(Lv.1) (0) | 2024.03.22 |
의상(Lv.2) (0) | 2024.03.22 |