如何选择日期并忽略时间

时间:2015-12-10 08:54:37

标签: mysql sql select group-by

我做了一个SQL语句,我想使用日期,但没有时间。

我的选择是:

SELECT DATEPART(dw, [Order].PerformDate)

我的小组是:

GROUP BY [Order].PerformDate

现在我怎么能忽略时间?

4 个答案:

答案 0 :(得分:2)

您可以使用SQL的CONVERT功能

select datepart(dw, CONVERT(DATE,[Order].PerformDate)) 
GROUP BY CONVERT(DATE,[Order].PerformDate)

答案 1 :(得分:1)

将日期时间值转换为日期:

select cast(`Order`.PerformDate as date) as PerformDate

答案 2 :(得分:1)

GROUP BY说“我想要每个____一个结果行”。在你的情况下,每个PerformDate一行。如果PerformDate是一个日期时间,但您只想在没有时间的情况下每个日期有一个结果行,那么您必须提取日期部分:

group by cast(performdate as date)

您还希望使用datepart(dw, performdate)显示工作日,但这已不再可能,因为PerformDate不再可用。只有它的日期部分。所以:

select datepart(dw, cast(performdate as date))
from ...
group by cast(performdate as date);

答案 3 :(得分:0)

另一种方法:

select date_format(`order`.PerformDate, '%Y%m%d')
...
group by 1