按日期计算查询分组忽略时间
Posted
技术标签:
【中文标题】按日期计算查询分组忽略时间【英文标题】:Count query grouping by date ignoring time 【发布时间】:2015-09-10 17:09:12 【问题描述】:我有一个 DATE 变量,它应该被分组忽略此查询中的时间:
SELECT COUNT(*), update_date
FROM table1
HAVING count(update_date)>1
GROUP BY update_date
ORDER BY update_date desc
结果是正确的,但我需要按 DAY 而不是按秒对它们进行分组,因为该字段的日期格式是 DD/MM/YYYY HH:MM:SS。我想只比较 DD/MM/YYYY,忽略更新时间,按天。
【问题讨论】:
【参考方案1】:使用trunc()
将时间部分设置为00:00:00
:
SELECT COUNT(*), trunc(update_date) as update_date
FROM table1
GROUP BY trunc(update_date)
HAVING count(trunc(update_date))>1
ORDER BY trunc(update_date) desc
【讨论】:
应该group by
在 having
之前吗?
@vkp:其实没关系:docs.oracle.com/cd/E11882_01/server.112/e41084/…,但将“拥有”放在“看起来”更好的群体之后
@a_horse_with_no_name..知道了..我以前不知道..谢谢以上是关于按日期计算查询分组忽略时间的主要内容,如果未能解决你的问题,请参考以下文章