【发布时间】:2014-02-03 11:21:12
【问题描述】:
我写了一个查询来获取过去 5 个月没有活动的任务总数,包括那些在 5 个月前创建并且从未访问过的任务。
我可以进一步缩短这个查询,这样我就不必使用外部查询了。
SELECT @NumNoActivity = COUNT(QnoActivity.AssignmentID) FROM
(
SELECT a.AssignmentID
FROM Assignments a
LEFT JOIN VISITS v ON v.AssignmentID = a.AssignmentID
WHERE a.CurrentStatus = 1
AND a.StaffID = @StaffID
GROUP BY a.AssignmentID, a.CreatedDate
HAVING DATEDIFF(MONTH, ISNULL(MAX(v.VisitDate),a.CreatedDate ), GETDATE()) > =5
) QnoActivity
【问题讨论】:
标签: sql sql-server sql-server-2008