【发布时间】:2018-12-18 20:15:43
【问题描述】:
以下查询有问题:
SELECT *
FROM [projectuser].[dbo].[newdataset]
WHERE ( Datediff(s, '1970-01-01 00:00:00', Max(dob)) )
>=
(SELECT Datediff(s, '1970-01-01 00:00:00', Max(dob)) - 3600
FROM [projectuser].[dbo].[sqlquries7])
ORDER BY dob
错误信息:
聚合可能不会出现在 WHERE 子句中,除非它位于 包含在 HAVING 子句或选择列表中的子查询,以及列 被聚合是一个外部引用。
基于更改数据捕获,尝试从纪元日期时间中的当前最大日期(目标)中选择 1 小时记录(源)(将日期时间转换为纪元)。外部查询是源,内部查询是目标 请帮我。 谢谢你
【问题讨论】:
-
你想在这里做什么?为什么你会在 datediff 中有 Max(dob)?
-
该错误消息的哪一部分不清楚? where 子句中不能有聚合。提示...MAX。
-
更新您的问题添加适当的数据样本和预期结果
-
已编辑。请找到。
-
对不起,你的问题没有任何意义。我认为您需要发布示例数据和期望的结果以使其清楚。
标签: sql sql-server