mysql修改記錄時update操作 字段=字段+字符串

在有些場景下,我們需要對我們的varchar類型的字段做修改,而修改的結果為兩個字段的拼接或者一個字段+字符串的拼接。

如下所示,我們希望將xx_role表中的name修改為name+id。

在mysql下,我們直接通過“+”來操作,會提示錯誤。

操作符“+”是用來對數字進行加操作的,這裡需要使用關鍵字concat,表示拼接。

同樣的,我們也可以利用字段+字符串來拼接。

這裡稍微說一下“+”的操作,他是用來對數字類型的字段進行加操作的,如下所示:

補充:mysql中使用update同時更新多個字段,包括select查詢

錯誤嘗試:

update 表名 set(字段1,字段2,字段3,…) = (select 數值1,數值2,數值3,…) where 條件

正確方式:

# 不使用select情況
UPDATE OldData o, NewData n 
SET o.name = n.name, o.address = n.address 
where n.nid=234 and o.id=123;

# 使用select情況
UPDATE OldData o, (select name, address from NewData where id = 123) n 
SET o.name = n.name, o.address = n.address 
where n.nid=234;

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。