簡體   English   中英

SQL檢查查詢結果中是否存在值

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM