개발일지

[MySQL] IS NOT NULL, 날짜함수 / 3월에 태어난 여성 회원 목록 출력하기 본문

SQL

[MySQL] IS NOT NULL, 날짜함수 / 3월에 태어난 여성 회원 목록 출력하기

O'mil 2024. 4. 24. 12:28
728x90

문제 설명

Table: MEMBER_PROFILE

  • 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일 조회
    이때 전화번호가 NULL인 경우는 출력대상에서 제외,
    결과는 회원ID를 기준으로 오름차순

 

코드

SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') AS DATE_OF_BIRTH
FROM MEMBER_PROFILE
WHERE DATE_OF_BIRTH LIKE '____-03%'AND
GENDER = 'W'
ORDER BY MEMBER_ID ASC;

 

 

결과

 


IS NULL

  • IS NULL
  • IS NOT NULL
SELECT 컬럼명
FROM 테이블명
WHERE 컬럼명 IS NULL;
// 컬럼이 NULL인 값만 출력

SELECT 컬럼명
FROM 테이블명
WHERE 컬럼명 IS NOT NULL;
// 컬럼이 NOT NULL인 값만 출력

 

 

코드

SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') AS DATE_OF_BIRTH
FROM MEMBER_PROFILE
WHERE DATE_OF_BIRTH LIKE '____-03%'
AND GENDER = 'W'
AND TLNO IS NOT NULL
ORDER BY MEMBER_ID ASC;

 

 

결과

 


 

날짜 함수

  • dayofweek(날짜): 몇 번째 요일인지 알려줌
    일요일 = 1, 월요일 = 2, ··· , 토요일 = 7
  • weekday(날짜): 몇 번째 요일인지 알려줌
    월요일 = 0, 화요일 = 1, ··· , 일요일 = 6
  • dayofmonth(날짜): 달의 몇 번째 날인지 알려줌
    리턴값은 1~31의 값
  • dayofyear(날짜): 한 해의 몇 번째 날인지 알려줌
    리턴값은 1~366의 값
  • year(날짜): 년도 리턴
  • month(날짜): 리턴값은 1~12의 값
  • hour(시간): 리턴값은 0~23
  • minute(시간): 리턴값은 0~59
  • second(시간): 리턴값은 0~59
  • dayname(날짜): 요일을 영어로 리턴
    ex) monday, tuesday, ··· 
  • monthname(날짜): 달을 영어로 리턴
    ex) January, February, ··· 
  • quarter(날짜): 분리를 알려줌
    리턴값은 1~4

코드

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) = 3
AND GENDER = 'W'
AND TLNO IS NOT NULL
ORDER BY MEMBER_ID ASC;

 

728x90
Comments