分组方式<;日期字段>;在我的Sql(Oracle)中不工作

分组方式<;日期字段>;在我的Sql(Oracle)中不工作,sql,group-by,Sql,Group By,我想计算一年中每天完成的注册数量(例如,reg表中的first_name、last_name和reg_date列) 这就是我正在尝试的: select reg_date, count(reg_date) from reg where reg_date >= to_date('01-JAN-12', 'DD-MON-YY') group by (reg_date) 结果并不像预期的那样。它不是按注册日期分组并显示每次注册的注册日期 我的注册日期具有日期类型 谢谢大家! 这很可能是因为

我想计算一年中每天完成的注册数量(例如,reg表中的first_name、last_name和reg_date列)

这就是我正在尝试的:

select reg_date, count(reg_date) 
from reg 
where reg_date >= to_date('01-JAN-12', 'DD-MON-YY') 
group by (reg_date)
结果并不像预期的那样。它不是按注册日期分组并显示每次注册的注册日期

我的注册日期具有日期类型


谢谢大家!

这很可能是因为每个
日期所携带的时间部分。要摆脱它,请使用trunc功能:

select trunc(reg_date), count(trunc(reg_date))
from reg 
where reg_date >= to_date('01-JAN-12', 'DD-MON-YY') 
group by trunc(reg_date)

有趣的是,如果你只是在组上运行一个trunc,它仍然可以做最有效的工作……你还必须在实际的select列上运行它。