我可以使用sql server case语句生成字符串吗?
在SQL server 2008中是否可以执行以下操作:我可以使用sql server case语句生成字符串吗?,sql,sql-server-2008,Sql,Sql Server 2008,在SQL server 2008中是否可以执行以下操作: CASE WHEN var1 = 1 THEN 'message 1 ' END as messages CASE WHEN var2 = 1 THEN 'message 2 ' END as messages 其中,如果两个变量均为真,则消息将导致消息1消息2 我确实意识到我可以执行子查询并创建消息,但我很好奇,是否可以不使用子查询或使用语句来执行 是的,可以通过连接字符串并在没有内容时使用空字符串来实现 SELECT CASE
CASE WHEN var1 = 1 THEN 'message 1 ' END as messages
CASE WHEN var2 = 1 THEN 'message 2 ' END as messages
其中,如果两个变量均为真,则消息将导致消息1消息2
我确实意识到我可以执行子查询并创建消息,但我很好奇,是否可以不使用子查询或使用语句来执行 是的,可以通过连接字符串并在没有内容时使用空字符串来实现
SELECT
CASE WHEN @var1 = 1 THEN 'message 1 ' ELSE '' END +
CASE WHEN @var2 = 1 THEN 'message 2 ' ELSE '' END as messages
是的,可以通过连接字符串并在没有内容时使用空字符串来实现
SELECT
CASE WHEN @var1 = 1 THEN 'message 1 ' ELSE '' END +
CASE WHEN @var2 = 1 THEN 'message 2 ' ELSE '' END as messages
是的,您可以,您有连接字符串:
CONCAT(
CASE WHEN var1 = 1 THEN 'message 1 ' END,
CASE WHEN var2 = 1 THEN 'message 2 ' END
) as messages
是的,您可以,您有连接字符串:
CONCAT(
CASE WHEN var1 = 1 THEN 'message 1 ' END,
CASE WHEN var2 = 1 THEN 'message 2 ' END
) as messages
我没想到会这么简单。谢谢,我没想到会这么简单。非常感谢。