MySQL: DATE_ADD - PullRequest
       15

MySQL: DATE_ADD

16 голосов
/ 15 июля 2009

Есть ли разница между:

SELECT DATE_ADD('2005-01-01', INTERVAL 3 MONTH);

и

SELECT '2005-01-01' + INTERVAL 3 MONTH;

Ответы [ 2 ]

17 голосов
/ 15 июля 2009

Нет, они одинаковые.

5 голосов
/ 23 февраля 2014

Я только что задал похожий вопрос и сам нашел ответ. Вот обоснование, почему они одинаковы:

SELECT BENCHMARK(20000000, DATE_ADD(NOW(), INTERVAL 3 MONTH));

+--------------------------------------------------------+
| BENCHMARK(20000000, DATE_ADD(NOW(), INTERVAL 3 MONTH)) |
+--------------------------------------------------------+
|                                                      0 |
+--------------------------------------------------------+
1 row in set (1.70 sec)


SELECT BENCHMARK(20000000, NOW() + INTERVAL 3 MONTH);
+-----------------------------------------------+
| BENCHMARK(20000000, NOW() + INTERVAL 3 MONTH) |
+-----------------------------------------------+
|                                             0 |
+-----------------------------------------------+
1 row in set (1.71 sec)
...