gpt4 book ai didi

SQL:如何从一行的列值构建字符串?

转载 作者:行者123 更新时间:2023-12-04 05:52:20 27 4
gpt4 key购买 nike

我有这样的行...

|  NAME  |   RED  |  BLUE  |  GREEN  |
LeAnn 1 0 1
Jim 0 0 0
Timothy 1 1 1

我想写一个选择语句,将返回以下行...
| Name    | Note |
LeAnn RED, Green
Jim
Timothy RED, BLUE, GREEN

我怎样才能做到这一点?我尝试使用 case 语句,但在 Note 中只会得到一个值而不是多个值。谢谢!

我的尝试:
SELECT Name, 
CASE
WHEN Red = 1 THEN 'Red' + ', '
WHEN Blue = 1 THEN 'Blue' + ', '
WHEN Green = 1 THEN 'Green' + ', '
END as Note
FROM MyTable

最佳答案

由于这些案例不是相互排斥的,因此您需要三个单独的案例:

SELECT ('' + 
CASE WHEN Red = 1 THEN 'Red, ' ELSE '' END
+ CASE WHEN Blue = 1 THEN 'Blue, ' ELSE '' END
+ CASE WHEN Green = 1 THEN 'Green, ' ELSE '' END
)
AS Note
FROM MyTable

关于SQL:如何从一行的列值构建字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9931715/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com