0
我有4列有id
和其他列(A,B,C)
有二進制值。如何在sql中使用逗號分隔符?
我想要得到如下結果,其列(A,B,C)
其中value = 1
。然後,特定的列名稱必須以逗號分隔值顯示在新列(D)中。
我想要下面的結果。誰能幫幫我嗎?
Id A B C D
1 1 1 0 A,B
2 0 1 0 B
3 0 1 0 B
4 1 0 1 A,C
5 1 0 1 A,C
我有4列有id
和其他列(A,B,C)
有二進制值。如何在sql中使用逗號分隔符?
我想要得到如下結果,其列(A,B,C)
其中value = 1
。然後,特定的列名稱必須以逗號分隔值顯示在新列(D)中。
我想要下面的結果。誰能幫幫我嗎?
Id A B C D
1 1 1 0 A,B
2 0 1 0 B
3 0 1 0 B
4 1 0 1 A,C
5 1 0 1 A,C
一個簡單CASE
表達會做到這一點:
SELECT *,
D =
STUFF((
CASE
WHEN A = 1 THEN ',A'
ELSE ''
END +
CASE
WHEN B = 1 THEN ',B'
ELSE ''
END +
CASE
WHEN C = 1 THEN ',C'
ELSE ''
END
), 1, 1, '')
FROM tbl
感謝Felix.This是什麼即時尋找。 – Perumal