【发布时间】:2018-04-15 08:35:28
【问题描述】:
SELECT
AVG(
DATEDIFF(
day,
P.[ProjectCreatedDate],
CASE WHEN T.[Reported Milestones] LIKE '02 Request Assigned' THEN T.[TaskActualFinishDate]
)
) AS AverageAssignmentAge
我有上述查询,我试图找出创建日期和请求分配日期之间的平均分配天数。不行啊,怎么解决?
【问题讨论】:
-
在case语句后使用
end。 -
请发布您的其余查询和一些示例数据,并解释它是如何不工作的。您是否收到错误消息或只是不正确的结果?您使用的是什么 DBMS?
-
提示:如果您有一个复杂的
SELECT子句,则可能值得使用子查询在逻辑上分隔中间结果以使其更具可读性。很遗憾,SQL 仍然不允许SELECT中的迭代步骤和临时变量。 -
@Ankit Bajpai - 我在 CASE 语句之后使用了 END,但查询也没有产生任何结果。
-
@Dai 我收到语法错误,没有结果。我正在使用 Microsoft SQL Server 管理 Studio。
标签: sql sql-server case average datediff