본문 바로가기
SQL/SQL 스터디

SQL 독학: 10가지 주요 날짜 및 시간 함수

by davi_kr 2023. 4. 23.

목차

    반응형

    SQLD 공부 및 데이터 분석을 하기 위해 DB에 있는 값들을 불러올 때, SQL을 많이 활용했습니다.

    이전에 독학하면서 공부했던 내용을 기록으로 남겨둡니다.

     

    1. CURRENT_DATE: 오늘 날짜를 반환

    예시 쿼리: SELECT CURRENT_DATE;
    예시 결과: 2023-04-23

     

     

    2. CURRENT_TIME: 현재 시간을 반환

    예시 쿼리: SELECT CURRENT_TIME;
    예시 결과: 10:30:45

     

    3. CURRENT_TIMESTAMP: 현재 날짜와 시간을 반환

    예시 쿼리: SELECT CURRENT_TIMESTAMP;
    예시 결과: 2023-04-23 10:30:45

     

    예시) users 테이블

    id name email dob
    1 Alice alice@example.com 1995-01-01
    2 Bob bob@example.com 1990-05-15
    3 Charlie charlie@example.com 1985-10-30

     

    4. YEAR: 날짜에서 연도를 추출

    SELECT name, YEAR(dob) AS birth_year 
    FROM users;

     

    name birth_year
    Alice 1995
    Bob 1990
    Charlie 1985

     

    5. MONTH: 날짜에서 월을 추출

    SELECT name, MONTH(dob) AS birth_month 
    FROM users;

     

    name birth_month
    Alice 1
    Bob 5
    Charlie 10

     

    6. DAY: 날짜에서 일(day)을 추출

    SELECT name, DAY(dob) AS birth_day
    FROM users;

     

    name birth_day
    Alice 1
    Bob 15
    Charlie 30

     

    7.  DATEDIFF: 두 날짜 간의 차이를 일 단위로 계산

    SELECT DATEDIFF(CURRENT_DATE, dob) AS age_in_days
    FROM users
    WHERE name = 'Alice';

     

    age_in_days
    10305

     

    8. DATE_ADD: 날짜에 특정 기간을 더함

    SELECT DATE_ADD(dob, INTERVAL 30 DAY) AS plus_30_days
    FROM users
    WHERE name = 'Alice';

     

    plus_30_days
    1995-01-31

     

    9. DATE_SUB: 날짜에서 특정 기간을 뺌

    SELECT DATE_SUB(dob, INTERVAL 30 DAY) AS minus_30_days
    FROM users
    WHERE name = 'Alice';

     

    minus_30_days
    1994-12-02

     

    10. EXTRACT: 날짜에서 특정 요소를 추출

    SELECT name, EXTRACT(YEAR_MONTH FROM dob) AS year_month
    FROM users;

     

    name year_month
    Alice 199501
    Bob 199005
    Charlie 198510
    반응형

    댓글