根据SQL Server中的条件从表中检索列值

根据SQL Server中的条件从表中检索列值,sql,sql-server,Sql,Sql Server,我有一个有三列的表: (作业号、程序ID和状态) JobNo有许多ProgramId,每个ProgramId都有状态 我只需要检索那些JobNo,其中相同JobNo的所有programmaid具有状态=“已交付” 从给定图像中,仅应将JobNo(1和4)作为JobNo(1和4)程序ID的状态=“已交付”输出 您的问题建议将分组为和拥有: select jobid from t group by jobid having min(status) = max(status) and min(stat

我有一个有三列的表:

(作业号、程序ID和状态)

JobNo
有许多
ProgramId
,每个
ProgramId
都有
状态

我只需要检索那些
JobNo
,其中相同
JobNo
的所有
programmaid
具有
状态
=“已交付”

从给定图像中,仅应将
JobNo
(1和4)作为
JobNo
(1和4)程序ID的
状态
=“已交付”输出


您的问题建议将
分组为
拥有

select jobid
from t
group by jobid
having min(status) = max(status) and min(status) = 'delivered';
尝试以下方法(未经测试):


您应该编辑您的问题,并提供示例数据和所需结果。解释很难理解。请点击上面的链接查看示例表。谢谢,先生。得到了我想要的。谢谢,先生。得到了我想要的。
SELECT      JobNo
FROM        MyTable
GROUP BY    JobNo
HAVING      SUM(IIF(Status = 'Delivered', 0 , 1)) = 0