sql-server - 当列是 T-SQL 查询中的时间戳时,根据日期获取 COUNT?
问题描述
我正在尝试根据日期进行计数,但该列是时间戳。我想我需要在 FROM 语句之后放置 cast 函数,但不确定。
Select Count(X), Cast(Y as date)
From table
Where Y = '2019-04-01';
我已经尝试了上述查询的一系列衍生产品,我已经运行了一些查询,但仍然无法获得实际输出。我似乎在谷歌上找不到一个很好的例子,所以我认为这里有人可能遇到了这个问题。TO_CHAR
并且TRUNK
不支持。
当前代码:
SELECT COUNT([X]), CAST(Y AS date)
FROM table
WHERE Y = '04/01/2019'
GROUP BY Y ORDER BY Y;
运行,但不返回任何输出(我知道有结果)。
SELECT COUNT([email]), processed
FROM [AJM].[dbo].[EmailSend]
CAST(processed AS date)
WHERE processed = '04/01/2019'
按已处理订单按已处理分组;
错误:
“已处理”不是可识别的表提示选项。如果它打算作为表值函数或 CHANGETABLE 函数的参数,请确保您的数据库兼容模式设置为 90。
目标是在指定日期之前获得 X 或 Y 的计数。
解决方案
你需要类似下面的东西吗?
SELECT COUNT([email]), processed
FROM [AJM].[dbo].[EmailSend]
WHERE CAST(processed AS date) = '04/01/2019'
推荐阅读
- qt - QSqlTableModel: Where can I get whether a row is marked as removed
- r - 重命名分类级别以减少级别数
- ansible - Ansible Missing sudo password
- php - Laravel Models 一对多关系未建立
- javascript - 单击网站中的底部计数器:我想要一种方法使计数器从重新加载页面后到达的位置完成(继续)
- javascript - 机器人在尝试播放音乐并给出“未定义”错误时离开语音通道
- r - 在 R 中运行 C 库中的函数
- sql - 如何正确统计用户
- javascript - 在不受欢迎的网站上使用应用图像数据
- git - git pull / merge - 忽略与远程相同的未跟踪和修改文件,如果它们不同则抱怨