코딩 스쿨 SQL

언어선택 : HTMLCSSJAVAJAVASCRIPTMYSQLSQL PHP

SQL Dates

SQL Dates: 날짜 및 시간 처리

SQL Dates는 테이블에서 날짜와 시간을 다루기 위한 데이터 타입과 함수들을 의미합니다. 날짜와 시간은 데이터베이스에서 매우 중요한 역할을 하며, 특정 날짜에 대한 기록을 저장하거나 시간 기반 연산을 수행할 때 사용됩니다.


1. SQL 날짜 및 시간 데이터 타입

  1. DATE: YYYY-MM-DD 형식의 날짜를 저장합니다. (예: 2024-10-11)
  2. TIME: HH:MM형식의 시간을 저장합니다. (예: 14:30:00)
  3. DATETIME: 날짜와 시간을 모두 저장합니다. (예: 2024-10-11 14:30:00)
  4. TIMESTAMP: UNIX 시간으로 저장되며, 1970-01-01 00:00:00부터의 경과 시간을 초 단위로 기록합니다.
  5. YEAR: 2자리 또는 4자리의 연도를 저장합니다. (예: 2024)

2. 날짜 및 시간 데이터 타입 예제

예제: events 테이블에서 날짜와 시간을 저장

CREATE TABLE events (
    event_id INT PRIMARY KEY,
    event_name VARCHAR(100),
    event_date DATE,  -- 날짜만 저장
    event_time TIME,  -- 시간만 저장
    event_datetime DATETIME  -- 날짜와 시간 모두 저장
);

이 명령은 events 테이블에서 event_date는 날짜만, event_time은 시간만, event_datetime은 날짜와 시간을 모두 저장합니다.


3. 날짜 및 시간 함수

SQL에서는 날짜와 시간을 처리하기 위한 다양한 함수들을 제공합니다.

3.1 NOW()

현재 날짜와 시간을 반환합니다.

SELECT NOW();

출력 예: 2024-10-11 14:30:00

3.2 CURDATE()

현재 날짜를 반환합니다.

SELECT CURDATE();

출력 예: 2024-10-11

3.3 CURTIME()

현재 시간을 반환합니다.

SELECT CURTIME();

출력 예: 14:30:00

3.4 DATEADD()

특정 날짜에 기간을 더합니다. (SQL Server에서 사용)

SELECT DATEADD(day, 10, '2024-10-01');

출력 예: 2024-10-11 (10일을 더한 날짜)

3.5 DATEDIFF()

두 날짜 간의 차이를 반환합니다.

SELECT DATEDIFF('2024-10-11', '2024-10-01');

출력 예: 10 (두 날짜 간의 차이)


4. 날짜 및 시간 데이터 삽입

날짜와 시간을 저장할 때 YYYY-MM-DD 형식으로 DATE 값을 삽입하고, HH:MM

형식으로

TIME

값을 삽입합니다.

예제: events 테이블에 날짜와 시간 삽입

INSERT INTO events (event_id, event_name, event_date, event_time, event_datetime)
VALUES (1, 'Company Meeting', '2024-10-11', '14:30:00', '2024-10-11 14:30:00');

이 명령은 2024년 10월 11일 오후 2시 30분에 개최되는 회의 정보를 삽입합니다.


5. 날짜 및 시간 형식 변경

DATE_FORMAT() 함수를 사용하여 MySQL에서 날짜와 시간을 특정 형식으로 변환할 수 있습니다.

예제: 날짜 형식을 DD-MM-YYYY로 변환

SELECT DATE_FORMAT('2024-10-11', '%d-%m-%Y');

출력 예: 11-10-2024


6. 요약

  • DATE, TIME, DATETIME 등의 데이터 타입을 사용하여 날짜와 시간을 저장할 수 있습니다.
  • NOW(), CURDATE(), DATEDIFF() 등의 함수를 사용해 날짜 및 시간을 조회하거나 계산할 수 있습니다.
  • 날짜와 시간의 형식 변환DATE_FORMAT() 함수를 사용해 가능하며, 이를 통해 다양한 형식으로 날짜를 출력할 수 있습니다.

날짜와 시간은 데이터베이스에서 중요한 정보이며, 이를 관리하는 SQL 기능들은 데이터를 더욱 정확하고 효율적으로 처리할 수 있게 합니다.


copyright ⓒ 스타트코딩 all rights reserved.
이메일 : startcodingim@gamil.com