在MySQL中将多个文本字段组合成一个

时间:2011-03-17 02:23:08

标签: mysql sql

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

4 个答案:

答案 0 :(得分:4)

首先添加一个比所有3个组合更长的列。

alter table tbl add fullname varchar(100);

接下来,使用旧列的concat更新它。

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 :(得分:1)

UPDATE Users SET FullName = FirstName + ' ' + MiddleName + ' ' + LastName

答案 2 :(得分:0)

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

答案 3 :(得分:0)

使用连接 '表达+表达' 表达式应该是非NULL。