문제 

https://school.programmers.co.kr/learn/courses/30/lessons/131120

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

문제 정리

1. 생일이 3월인 여성
WHERE MONTH(birth)=3 AND gender="W"

2. 전화번호가 null 인 데이터 제외
WHERE tlno IS NOT NULL

3. 생일의 데이터 포맷 = "YYYY-MM-DD"
DATE_FORMAT(birth, "%Y-%m-%d")

4. id 기준 오름차순 정렬
ORDERY BY id

 

코드

SELECT member_id,member_name,gender,DATE_FORMAT(date_of_birth,'%Y-%m-%d')
FROM member_profile
WHERE gender="W" AND MONTH(date_of_birth)=3 AND tlno IS NOT NULL 
ORDER BY member_id;

 

 

회고

데이터 포맷에 관한 내용을 확인하지 못해서 일단 시간이 조금 지체되었고, 해당 조건을 보고 DATE() 를 사용하면 되려니 했는데 실패가 떴다. 검색을 통해 관련 함수를 찾아보니 데이터 형식을 변경하는 함수는 DATE_FORMAT(date, 형식) 이며 형식은 다양하게 조정 가능하다. 

 

자주 사용될 것 같은 형식을 정리해보면 아래와 같다.

"%Y-%m-%d" 
>> 2024-03-29

"%Y-%m-%d %T"
>> 2024-03-29 23:11:00

"%Y-%m-%d %p %h:%i"
>>>2024-03-29 PM 04:30

응용 PM > 오후
REPLACE(DATE_FORMAT(date,"%Y-%m-%d %p %h:%i"),"PM","오후")

 

 

+ Recent posts