我有一个复杂的查询,它从多个字段中求和,除一个子选择(有多个子选择)外,其他所有查询似乎都工作正常。我有一个WHERE子句,它使用table1.field = table2.field AND CONVERT(DATE,date / time field)在“ firstDate”和“ lastDate”之间总计。在没有“ AS总计”的情况下,它可以正常工作,但是当我在包含“ AS总计”的情况下运行时,我的结果不会进入“总计”。不知道为什么我只能以一种方式得到结果,而不能以其他方式得到结果。由于AS似乎未获得返回的值,因此我在VS中收到“总计”的DBNull异常。
这是一个SQL Sever数据库。
SELECT
SUM(DATEDIFF(SECOND, a.intime, a.outtime))
FROM
table1 a, table2 a b
WHERE
a.empKey = b.employeeKey
AND CONVERT(DATE, outtime) BETWEEN '2018/07/12 4:00 AM' AND '2018/07/12 5:00 PM' AS total
答案 0 :(得分:0)
我相信你想要
SELECT SUM(DATEDIFF(SECOND, a.intime, a.outtime)) as total
FROM table1 a JOIN
table2 b
ON a.empKey = b.employeeKey
WHERE CONVERT(DATE, outtime) BETWEEN '2018/07/12 4:00 AM' AND '2018/07/12 5:00 PM' ;