본문 바로가기
DB/문제풀이

[프로그래머스] 입양 시각 구하기 -LV.2

by 쬑께께 2023. 1. 11.

입양 시각 구하기 문제는 다음과 같다.

 

 

 

이번 문제를 풀기 위해선

1. 회원의 ID, 이름, 성별, 생년월일 출력

2. 생년월일을 'YYYY-MM-DD' 형태로 출력

3. 생일이 3월인 여성 회원 출력

4. 전화번호가 NULL인 경우 제외

5. 회원 ID를 기준으로 오름차순 정렬

순으로 접근해야한다.

 

 

 

 

우선 회원의 ID, 이름, 성별, 생년월일을 출력시키겠다.

 

 

 

 

다음으로는 생년월일이 'YYYY-MM-DD'

형태로 출력되도록 만들어주겠다.

이를 위해선 DATE_FORMAT ( )이 필요한데 

자세한 사용방법은 아래 글을 참고하기 바란다.

https://djsflsdudn57.tistory.com/96

 

DATE_FORMAT

DATE_FORMAT은 날짜와 시간 표기 방식을 지정할 수 있게 해주는 구문이다. 1. 날짜 출력하기 - 'YYYY-MM-DD' 형태로 출력하기 - 'YY-MM-DD' 형태로 출력하기 위와 같이 대소문자 하나의 차이로 출력결과가

djsflsdudn57.tistory.com

 

 

 

DATE_OF_BIRTH라는 컬럼을

'YYYY-MM-DD' 형태로 출력해야 하며

출력되는 컬럼명이 DATE_OF_BIRTH여야 하니

AS를 통해 별명을 지어주었다.

(AS 명령어를 사용하지 않을 경우

DATE_FORMAT을 사용한 DATE_OF_BIRTH 컬럼은

DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d')로 출력된다.)

 

 

 

 

다음으로는 생일이 3월인 여성 회원만

출력되도록 조건을 걸어주겠다.

생일이 3월인 경우를 출력하기 위해

다시 한번 DATE_FORMAT( )를 사용해주었다.

또한, 생일이 3월이면서 여성이어야 하니

AND 연산자를 통하여 두 조건을 묶어주었다.

 

 

 

 

 

이제 전화번호가 NULL일 경우

출력에서 제외시키는 조건을 걸어주겠다.

(NULL일 경우 제외 = NULL이 아닐 경우 출력

이므로 IS NOT NULL을 사용하면 된다.)

위의 조건들과 마찬가지로 

3월 생이면서 여성이고, 전화번호가 NULL이 아니어야 하니

똑같이 AND 연산자로 묶어 조건들을 연결시켜주었다.

 

 

 

 

이제 마지막으로 회원 ID를 기준으로

오름차순 정렬을 해주겠다.

 

 

 

 

이제 정답인지 확인해보겠다.

정답이다.