我有以下表和數據:SQL - 條件Where語句
DECLARE @Temp TABLE (id int, city varchar(10), ref varchar(10))
INSERT INTO @Temp (id, city, ref)
SELECT 1, 'London', 'GBP' UNION ALL
SELECT 2, 'London', 'EUR'
SELECT *
FROM @Temp
WHERE ((city = 'London' AND ref = 'GBP') OR (city = 'London' AND ref <> 'GBP'))
這將返回:
1 London GBP
2 London EUR
我想要做的是檢查,其中城市= '倫敦' AND ref ='GBP',如果沒有排位賽資格,那麼檢查一下這個城市是否是倫敦,ref是什麼,嘗試使用case但是沒有工作。
在這種情況下,我應該只得到行#1。
感謝
什麼與關係? – lad2025
默認情況下TOP 1不返回關係。 OP問題描述不是很清楚,我假定他總是隻想返回單排。 – Arvo