반응형
문제
MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성해주세요. 이때 전화번호가 NULL인 경우는 출력대상에서 제외시켜 주시고, 결과는 회원ID를 기준으로 오름차순 정렬해주세요.
구조
MEMBER_ID, MEMBER_NAME, TLNO, GENDER, DATE_OF_BIRTH는 회원 ID, 회원 이름, 회원 연락처, 성별, 생년월일을 의미합니다.
예시
처음에 작성한 쿼리
select
member_id,
member_name,
gender,
date_of_birth
from member_profile
where to_char(date_of_birth, 'mm') = '03'
and gender = 'W'
and tlno is not null
order by member_id
틀린 이유
Date_of_Birth를 그냥 출력해주니 시,분,초까지 같이 출력 돼서 일치하지 않게 됐었습니다. 예시를 보면 결과물에 시,분,초는 나와있지 않으니 가공을 거쳐주어야 합니다.
수정한 쿼리
select
member_id,
member_name,
gender,
to_char(date_of_birth, 'yyyy-mm-dd') date_of_birth
from member_profile
where to_char(date_of_birth, 'mm') = '03'
and gender = 'W'
and tlno is not null
order by member_id
To_Char를 이용해 시,분,초를 제외시켜서 출력해 줬습니다.
조건문은 다음과 같습니다.
- 생일이 3월인 > to_char(date_of_birth, 'mm') = '03'
- 여성회원 > gender = 'W'
- 전화번호가 NULL인 경우는 출력 대상에서 제외 > and tlno is not null
문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/131120
반응형
'코딩테스트 > Oracle DB' 카테고리의 다른 글
[Oracle] 프로그래머스 : DATETIME에서 DATE로 형 변환 (0) | 2024.01.18 |
---|---|
[Oracle] 프로그래머스 : 가격이 제일 비싼 식품의 정보 출력하기 (0) | 2024.01.18 |
[Oracle] 프로그래머스 : 카테고리 별 상품 개수 구하기 (0) | 2024.01.09 |
[Oracle] 프로그래머스 : 가격대 별 상품 개수 구하기 (1) | 2024.01.09 |
[Oracle] 프로그래머스 : 상품 별 오프라인 매출 구하기 (1) | 2023.12.22 |