【发布时间】:2011-12-17 07:19:49
【问题描述】:
我有以下 sql 查询
declare @temp table(RevisionStatus varchar(100),DocTypeID varchar(50))
insert into @temp(RevisionStatus,DocTypeID)
select distinct md.RevisionStatus,dt.DocumentTypeID
from MissingDesignData md inner join tblDocumentType dt on md.[Doc Type]=dt.DocumentType inner join tblRevisionStatus rv on md.RevisionStatus=md.RevisionStatus
select distinct tm.RevisionStatus,tm.DocTypeID as 'DocType'
from @temp tm
rv.RevisionStatus=tm.RevisionStatus and rv.DocType=tm.DocTypeID
where not exists (select distinct rss.RevisionStatus,rss.DocType from tblRevisionStatus rss)
我需要返回tblRevisionStatus表中不存在但@temp表中存在的记录。目前它返回空数据集
当我选择@temp 数据时,如下所示
RevisionStatus DocType
PEN - Pending 14
PEN - Pending 16
PEN - Pending 2
PEN - Pending 3
PEN - Pending 30
PEN - Pending 34
PEN - Pending 5
PEN - Pending 55
tblRevisionStatus 数据集返回为
RevisionStatus DocType
IFC - Issued For Construction 4
RFD - Revised As Denoted 4
IFU - Issued For Use 4
AB - As Built NULL
C1 - Proceed, No Exception Taken 2
PEN - Pending 1
PEN - Pending 2
HLD - HOLD (Implementation Study ONLY) 1
当我运行上面给定的 sql 查询时,它什么也不返回。但只有
PEN - Pending 2
记录存在于 tblRevisionStatus 表中,为什么查询不返回其他记录。我在这里遗漏了什么吗?
【问题讨论】:
标签: sql sql-server tsql