mysql修改记录时update操作 字段=字段+字符串

2023年 5月 1日 41.6k 0

在有些场景下,我们需要对我们的varchar类型的字段做修改,而修改的结果为两个字段的拼接或者一个字段+字符串的拼接。 如下所示,我们希望将xx_role表中的name修改为name+id。 在mysql下

在有些场景下,我们需要对我们的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;

以上为个人经验,希望能给大家一个参考,也希望大家多多支持每日运维。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论