答案 0 :(得分:4)
尝试以下查询:
<强>查询#1 强>
UPDATE location SET more = CONCAT(county,' ',constituency,' ',ward);
注意:强>
如果county
或constituency
或ward
列包含NULL那么您可以在更新前检查null:
<强>查询#2 强>
UPDATE location
SET more = CONCAT( IFNULL(county, ''),' ',IFNULL(constituency, ''),' ',IFNULL(ward,''));
为什么要选择Query#2
您可能会了解使用IFNULL
背后的原因:
SELECT CONCAT('ABCD',null,'EFGH');
结果: NULL
SELECT CONCAT('ABCD',IFNULL(null,''),'EFGH')
结果: ABCDEFGH
<强>注意:强>
CONCAT_WS
可能会遇到数据丢失。以下示例是一个很好的指示:
SELECT CONCAT_WS('ABCD',null,'EFGH')
结果: EFGH
。 (你刚失去了ABCD
)
答案 1 :(得分:3)
试试这个。
UPDATE location SET more = CONCAT_WS(' ',county,constituency,ward);
答案 2 :(得分:1)
你可以像这样使用mys {的CONACT()
方法:
UPDATE your_table SET d = CONCAT CONCAT(a ,' ' ,b ,' ' ,c);