從表DS我有其中用戶類型被存儲爲D
,S
或兩者d &小號選擇用戶類型d OR S OR數據庫
像下方的SQL表,
ID TYPE
1 D
2 S
3 D
3 S
預期結果:
- 檢查用戶屬於哪種類型D或S或兩者。
- 我爲d預計1,2 S,和3 d &小號
我已經寫了下面這是工作完全正常的查詢,但我還是覺得,查詢和邏輯可以在很大程度上實現更好的方法。
select case count(distinct TYPE)
when 2 then 'DS'
when 1 then (select top 1 TYPE from Table1)
end as TYPE
from Table1
邏輯上述查詢的:
- 獲取用戶的TYPE的計
- 如果
count = 2
然後返回 'DS' - 否則如果
count = 1
然後返回用戶的類型(d或S)
我使用mssql –