我有一堆产品订单,我试图按日期分组,并合计该日期的数量。我如何按月/日/年分组而不考虑时间部分?

3/8/2010 7:42:00应与3/8/2010 4:15:00归为一组


当前回答

我相信你需要在每年的那个月的那一天进行分组。 那么为什么不使用TRUNK_DATE函数呢? 它的工作原理如下:

Group By DATE_TRUNC('day' , 'occurred_at_time')

其他回答

在Sql 2008之前,通过去掉日期部分:

GROUP BY CONVERT(CHAR(8),DateTimeColumn,10)

下面的例子在oracle中工作得很好

select to_char(columnname, 'DD/MON/yyyy'), count(*) from table_name group by to_char(createddate, 'DD/MON/yyyy');

CAST datetime字段到日期

select  CAST(datetime_field as DATE), count(*) as count from table group by CAST(datetime_field as DATE);

GROUP BY DATE(date_time_column)

将值转换为组的日期类型。

GROUP BY CAST(myDateTime AS DATE)