在有些场景下,我们需要对我们的varchar类型的字段做修改,而修改的结果为两个字段的拼接或者一个字段+字符串的拼接。
如下所示,我们希望将xx_role表中的name修改为name+id。
在mysql下,我们直接通过“+”来操作,会提示错误。
操作符“+”是用来对数字进行加操作的,这里需要使用关键字concat,表示拼接。
同样的,我们也可以利用字段+字符串来拼接。
这里稍微说一下“+”的操作,他是用来对数字类型的字段进行加操作的,如下所示:
补充:mysql中使用update同时更新多个字段,包括select查询
错误尝试:
update 表名 set(字段1,字段2,字段3,...) = (select 数值1,数值2,数值3,...) where 条件
正确方式:
1
2
3
4
5
6
7
8
9
|
# 不使用 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; |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/feinifi/article/details/89521870