我为这个问题的愚蠢而道歉,但我是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);
标签:mysql,concatenation,concat-ws
来源: https://codeday.me/bug/20190723/1513990.html