在MySQL中将多个文本字段合并为一个

问题描述 投票:4回答:4

我在一个表中有一个用户列表,分别有名字,中间名和姓氏的字段。由于各种原因,我需要更改数据库结构,以使只有一个“名称”字段。将数据从3个旧字段迁移到一个新字段中的最佳/最简便方法是什么?

mysql sql
4个回答
6
投票

首先添加一个列,该列长于所有3个列的总和。

alter table tbl add fullname varchar(100);

下一步,用旧列的concatenation更新它。

update tbl set fullname = concat(lastname, ', ', firstname, ' ', middlename)

(这以'Kirk,John M'的形式结束]

然后,删除旧列

alter table tbl drop column firstname;
alter table tbl drop column middlename;
alter table tbl drop column lastname;

1
投票
UPDATE Users SET FullName = FirstName + ' ' + MiddleName + ' ' + LastName

0
投票
UPDATE Users SET Fullname = CONCAT(Firstname, " ", MiddleName, " ", LastName);

0
投票

使用'表达+表达'表达式应为非NULL。

© www.soinside.com 2019 - 2024. All rights reserved.