我想知道如何從多個SQL CASE
表達式輸出連接字符串。SQL Server:CASE和連接字符串
這是我的查詢:
SELECT
u.UserId,
FirstName,
CASE u.access_b
WHEN '5000' THEN 'Active'
ELSE ''
END AS B,
CASE u.access_l
WHEN '2199-12-31' THEN 'Active'
ELSE ''
END AS LK
FROM
Users u
JOIN
userGroupMembership ugm ON u.userId = ugm.userId
JOIN
usergroup ug ON ug.usergroupId = ugm.usergroupId
WHERE
ug.usergroupId = 1220
AND (u.primaryType = 1 or u.primaryType = 2)
我得到這個:
因此,而不是兩列B和LK,我想介紹一個新的列這將稱爲訪問級別,如果B是活動的或者LK是活動的,則根據每個程序添加B或LK。例如,如果僅B激活,則「訪問級別」列的輸出將爲B,如果兩個程序均處於活動狀態,則輸出爲「B,LK」,如果LK僅處於活動狀態,則列將具有LK的值。
我可以選擇連接多個案例查詢的列值嗎?
謝謝,Laziale
如果我理解正確的話,我不認爲這是可能沒有一個子查詢。我假設你不想這樣,對吧? – stb
只要我能夠以正確的方式獲得所需的數據,任何方法都可以工作。謝謝 – Laziale