SQL Server服务器查询-计算不同的DateTime字段 [英] SQL Server Server query - Count distinct DateTime field
本文介绍了SQL Server服务器查询-计算不同的DateTime字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我们在SQL Server表中有以下记录。
Supposing we have the following records in an SQL Server table.
Date
19/5/2009 12:00:00 pm
19/5/2009 12:15:22 pm
20/5/2009 11:38:00 am
获取类似内容的SQL语法是什么?
What is the SQL syntax for getting something like this one?
日期 计数
2009年5月19日 2
2009年5月20日 1
推荐答案
您需要对日期字段的仅日期版本进行任何分组,例如。
You need to do any grouping on a Date only version of your datefield, such as this.
SELECT
CONVERT(VARCHAR(10), YourDateColumn, 101),
COUNT(*)
FROM
YourTable
GROUP BY
CONVERT(VARCHAR(10), YourDateColumn, 101)
我通常这样做,因为它避免了转换为varchar
I usually do this though, as it avoids conversion to varchar.
SELECT
DATEPART(yy, YourDateColumn),
DATEPART(mm, YourDateColumn),
DATEPART(dd, YourDateColumn),
COUNT(*)
FROM
YourTable
GROUP BY
DATEPART(yy, YourDateColumn),
DATEPART(mm, YourDateColumn),
DATEPART(dd, YourDateColumn)
编辑:另一种获取方法只是日期时间的日期部分
Another way to get just the date part of a datetime
DATEADD(d, 0, DATEDIFF(d, 0, YourDateColumn))
这篇关于SQL Server服务器查询-计算不同的DateTime字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文