例如:
mydate是nvarchar(20)
mydate
-------------
2011/08/04 10:14:47
2011/07/20 15:00:00
2011/07/20 22:15:59
2011/08/04 13:17:33
如何按日期分组
例如:
mydate
------------
2011/08/04
2011/07/20
答案 0 :(得分:3)
假设您正在使用SQL Server,请尝试以下方法:
SELECT LEFT(date_col,10) AS mydate, COUNT(*)
FROM your_table
GROUP BY LEFT(date_col,10);
答案 1 :(得分:0)
完全按照惯例应该这样做。如果我没有弄错,varchar将按字母顺序排序,在这种情况下是相同的。我也是一个好主意,将数据库结构更改为日期而不是char。
答案 2 :(得分:0)
在Oracle中,您可以使用以下示例:
select substr(mydate, 1, 10), count(*)
from mytable
group by substr(mydate, 1, 10)
答案 3 :(得分:0)
SQL Server - 试试这个,
SELECT convert(varchar, getdate(), 111) AS mydate
FROM yourtable
GROUP BY convert(varchar, getdate(), 111)