[英]SQL check if a value exists in a query result
以下查詢返回僅具有territoryid = 200的所有releaseID
select rt.ReleaseId from ReleaseTerritory rt
group by rt.ReleaseId
having SUM(case when rt.TerritoryId=200 then 0 else 1 end)=0
如何在上面的查詢結果中檢查值47033是否存在。 非常感謝。
添加一個where子句,將返回的結果限制為特定的ReleaseId
。
select rt.ReleaseId from ReleaseTerritory rt
where rt.ReleaseId = 47033
group by rt.ReleaseId
having SUM(case when rt.TerritoryId=200 then 0 else 1 end)=0
要接收諸如yes or exists
的值(警告未測試代碼):
select case when count(rt.ReleaseId) = 0
then 'Doesnt Exist'
else 'Exists' end as exists
from ReleaseTerritory rt
where rt.ReleaseId = 47033
group by rt.ReleaseId
having SUM(case when rt.TerritoryId=200 then 0 else 1 end)=0
select ReleaseId from ReleaseTerritory
where ReleaseId = 47033
and TerritoryId=200
except
select ReleaseId from ReleaseTerritory
where ReleaseId = 47033
and TerritoryId <> 200
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.