在mysql中连接用户定义的变量

时间:2016-11-11 11:08:32

标签: mysql sql

我有三个用户定义的变量,并且通过执行以下查询,一次只找到了如何连接,一次两个。

SET @sql := (CONCAT(@sql_q1, ' UNION ', @sql_med));

我还想连接我的其他用户定义变量@sql_q3,这样@sql存储@sql_q1,@ sql_med和@sql_q3。

有没有一种方法可以连接三个类似于上面的用户定义变量?

所有三个变量都使用同一个表中的相同数据。加入它们不是一个问题,因为我可以通过使用上面的联合线一次混合和匹配两个变量。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

使用CONCAT_WS()

SET @sql := CONCAT_WS(' UNION ', @sql_q1, @sql_med, @sql_q3);

注意:我建议您使用UNION ALL而不是UNION

另外,如果一个或多个变量是NULL,那么它的字符串仍然可以正常显示。