如何获得今天的日期并将其转换为01/mm /yyyy
格式并从3个月前的交货月份中获取数据?表已包含01/mm/yyyy
的交付月份。
答案 0 :(得分:65)
SELECT *
FROM TABLE_NAME
WHERE Date_Column >= DATEADD(MONTH, -3, GETDATE())
Mureinik建议的方法将返回相同的结果,但这样做可以使您的查询受益于Date_Column
上的任何索引。
或者您可以查看过去90天。
SELECT *
FROM TABLE_NAME
WHERE Date_Column >= DATEADD(DAY, -90, GETDATE())
答案 1 :(得分:11)
最新版本的mysql不支持DATEADD而是使用语法
DATE_ADD(date,INTERVAL expr type)
要使用最近3个月的数据,
DATE_ADD(NOW(),INTERVAL -90 DAY)
DATE_ADD(NOW(), INTERVAL -3 MONTH)
答案 2 :(得分:6)
我使用datediff
,而不关心格式转换:
SELECT *
FROM mytable
WHERE DATEDIFF(MONTH, my_date_column, GETDATE()) <= 3
答案 3 :(得分:0)
过去3个月
SELECT DATEADD(dd,DATEDIFF(dd,0,DATEADD(mm,-3,GETDATE())),0)
今天
SELECT DATEADD(dd,DATEDIFF(dd,0,GETDATE()),0)