将smalldatetime转换为date时,SQL GROUP BY无法正常工作

时间:2018-05-23 18:38:22

标签: sql sql-server-2016

在将smalldatetime转换为date时,我似乎无法使GROUP BY正常工作。我有以下查询:

DD-MON-YYYY HH24:MI:SS

此查询返回超过300,000行。最后我查了一下,四月只有30天了,所以我希望每天能得到30行,总计每天。这就像SQL仍在考虑时间部分。我不确定我错过了什么。有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:2)

从组中删除req.body.a = req.sanitize(req.body.a); req.body.b = req.sanitize(req.body.b); req.body.c = req.sanitize(req.body.c); 并修复日期常量:

thecount

我也不鼓励你在列别名周围放置单引号。首先,选择不需要转义的标识符名称(例如SELECT CAST(XDate AS DATE) as TheDate, SUM(TheCount) as count FROM TheTable WHERE XDate >= '2018-04-01' AND XDate < '2018-05-01' GROUP BY CAST(XDate AS DATE) ORDER BY TheDate; )。其次,只对字符串和日期常量使用单引号。