SQL语句:当给定ID的所有TAK完成时
我正在MS SQL server中查询一个应用程序,在该应用程序中,我监视单个任务何时完成,并希望添加一个列以确定是否已完成所有单个任务,如下所示SQL语句:当给定ID的所有TAK完成时,sql,sql-server,Sql,Sql Server,我正在MS SQL server中查询一个应用程序,在该应用程序中,我监视单个任务何时完成,并希望添加一个列以确定是否已完成所有单个任务,如下所示 tasks, completion_date, additional_column task_1 15-Jan-17 task_1 task_2 21-Jan-17 COMPLETE task_2 06-Jan-17 COMPLETE task_2 12-Dec-16 COMPLETE t
tasks, completion_date, additional_column
task_1 15-Jan-17
task_1
task_2 21-Jan-17 COMPLETE
task_2 06-Jan-17 COMPLETE
task_2 12-Dec-16 COMPLETE
task_3
task_3 21-Dec-16
有人能帮我吗?谢谢 我认为最简单的方法是使用ANSI标准窗口函数。这里有一种方法:
select t.*,
(case when count(*) over (partition by task) = count(completion_date) over (partition by task)
then 'Complete'
end) as additional_column
from t;
我认为最简单的方法是使用ANSI标准窗口函数。这里有一种方法:
select t.*,
(case when count(*) over (partition by task) = count(completion_date) over (partition by task)
then 'Complete'
end) as additional_column
from t;
欢迎来到SO。请拿着这本书读一读。欢迎来到SO。请拿着这本书读一读。