我正在尝试获取有关两个日期的差异以及这种差异发生的频率的一些信息。我可以用:
SELECT
DATEDIFF (day, db1.dbo.t1.Date1, db2.dbo.t2.Date2) AS Days
FROM
db1.dbo.t1
JOIN
db2.dbo.t2 ON db1.dbo.t1.wID = db2.dbo.t2.cID
AND db1.dbo.t1.Action LIKE 'Standard'
AND db2.dbo.t2.Status = 'CLOSED'
它会返回:
Days
-----
4
4
8
21
16
42
...
现在我想计算那些日子,比如:
Days Diff
----- -----
0 100
1 40
2 22
3 25
...
我在数据库中没有 CREATE VIEW 的权限,所以我在想一个嵌套语句,例如:
SELECT
Days, COUNT (*) AS Diff
FROM
Days
WHERE EXISTS
(
SELECT DATEDIFF (day, db1.dbo.t1.Date1, db2.dbo.t2.Date2) AS Days
FROM db1.dbo.t1 JOIN db2.dbo.t2
ON db1.dbo.t1.wID = db2.dbo.t2.cID
AND db1.dbo.t1.Action LIKE 'Standard'
AND db2.dbo.t2.Status = 'CLOSED'
)
GROUP BY Days
但我不断收到错误消息 207 和 208!
请告诉我我做错了什么。我一直在搜索和尝试各种事情,但到目前为止,我能想到的只是我需要为“db1.dbo.t1 JOIN db2.dbo.t2”提供一个别名,这样我就可以用以下方式调用它:
SELECT Days, COUNT (*) AS Diff
FROM new_dual_db_alias
WHERE EXISTS
谢谢,