Есть ли способ вычесть количество дней из даты в SQL?


Я знаю о DATEDIFF (d, date1, date2), но я не собираюсь вычитать две даты, а скорее количество дней от даты.

Например:

"2010-04-13" - 4 = "2010-04-09"

Возможно ли это с mySQL?

4 3

4 ответа:

Date_sub (дата, интервал 4 дня);

Да. См. http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_adddate

SELECT DATE_ADD('2008-01-02', 31);

Приводит к:

'2008-02-02'

Чтобы вычесть, просто используйте отрицательное число или используйте DATE_SUB

Это вычитает 2 дня из даты в таблице и покажет обе даты.

SELECT
[Date]
,DATEADD(DAY, -2, [Date]) AS [NewDate]
FROM
[YourTable]

Да. Mysql имеет множество функций даты. Просто погуглите mysql datetime functions, и вы получите список. Дата вычитания единицы среди них