通过将两个整数变量与MySQL连接生成新的字符串变量
-
12-11-2019 - |
题
我为这个问题的愚蠢道歉,但我是MySQL的新手,甚至在阅读文档时也遇到了麻烦。我有一个带有两列"homeid"和"indid"的表,它们都是整数数据字段。我想在一个新变量"uid"中用连字符连接这些。期望的输出如下所示:
uid homeid indid
10-1 10 1
10-2 10 2
11-1 11 1
我已经尝试了下面的代码,它通过生成串联变量应该坐在其中的变量"uid"来做得很好,但似乎没有工作(尽管不会产生错误):
ALTER TABLE table_name
add column uid varchar(10) FIRST; /*adds column uid to table "table_name" as first column*/
UPDATE table_name
SET uid=CONCAT('-' , homeid, indid);
提前感谢您的帮助(和耐心)。
解决方案
这里你需要的功能是 CONCAT_WS()
使用分隔分隔符 -
, ,或围绕参数更改为 CONCAT()
:
UPDATE table_name SET uid = CONCAT_WS('-' , homeid, indid);
或围绕参数更改为 CONCAT()
UPDATE table_name SET uid = CONCAT(homeid, '-', indid);
其他提示
请在查询后尝试。
UPDATE table_name SET uid=CONCAT('-' , homeid, indid) where homeid > 0;
. 不隶属于 StackOverflow