Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 쿼리에서 DATEADD 대신 DATE_ADD() 함수 사용하기

SQL Server의 DATEADD() 함수와 달리, MySQL에서는 DATE_ADD() 함수를 사용해야 합니다. 두 함수는 이름이 비슷하지만 문법이 다르므로 주의가 필요합니다.

DATE_ADD() 기본 문법

MySQL에서 특정 시간 간격을 더하는 기본 문법은 다음과 같습니다.

DATE_ADD(NOW(), INTERVAL yourValue MINUTE);

산술 연산자로 대체하기

함수를 사용하지 않고 산술 연산자(+)를 활용할 수도 있습니다. 결과는 동일합니다.

NOW() + INTERVAL 30 MINUTE

DATE_ADD() 함수 실습 예제

현재 시각에 30분을 더하는 쿼리입니다.

mysql> select date_add(now(), interval 30 minute);

실행 결과는 다음과 같습니다.

+-------------------------------------+
| date_add(now(), interval 30 minute) |
+-------------------------------------+
| 2019-02-27 15:38:27                 |
+-------------------------------------+
1 row in set (0.00 sec)

산술 연산자(+) 사용 예제

먼저 현재 시각을 확인해 보겠습니다.

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2019-02-27 15:09:18 |
+---------------------+
1 row in set (0.00 sec)

이제 NOW()에 30분을 더해 보겠습니다.

mysql> select now()+interval 30 minute;

실행 결과는 다음과 같습니다.

+--------------------------+
| now()+interval 30 minute |
+--------------------------+
| 2019-02-27 15:39:33      |
+--------------------------+
1 row in set (0.00 sec)

참고: 지원되는 시간 단위

INTERVAL 키워드 뒤에는 다양한 단위를 사용할 수 있습니다.

  • SECOND, MINUTE, HOUR
  • DAY, WEEK, MONTH, YEAR
  • 복합 단위도 가능: INTERVAL '1 2' DAY_HOUR

또한 시간을 빼야 할 경우에는 DATE_SUB() 함수나 마이너스(-) 연산자를 사용하면 됩니다.