3

下面是我的桌子的样子

create table tab (id INT, fullname varchar(100));

数据是

insert into tab values
(1,'Full Name 1'),
(2,'Full Name 2'),
(3,'Full Name 3'),
(4,'Full Name 4'),
(5,'Full Name 5'),
(6,'Full Name 6');

我想用fullnameas更新表格My Full Name is + actuallfullname。例如 id 1 的数据应该是My Full Name is Full Name 1.

知道如何在一个查询中完成这项工作吗?

使用下面的查询,它会执行 n 次,因为我有这么多的记录。

UPDATE tab SET fullname='My Full Name is Full Name 1';

sqlfiddle

4

4 回答 4

7

使用CONCAT.

UPDATE tab 
SET fullname = CONCAT('My Full Name is ', fullname)

SQLFiddle 演示

于 2012-10-16T08:36:37.763 回答
3

您可以使用 MySQL 的CONCAT()功能:

UPDATE tab SET fullname = CONCAT('My Full Name is ', fullname);

但这真的属于数据库吗?听起来像是一个人通常会在应用程序的表示层执行的操作。

于 2012-10-16T08:37:13.360 回答
2

参考CONCAT

UPDATE tab SET fullname=CONCAT('My Full Name is ',fullname);
于 2012-10-16T08:36:46.093 回答
1
UPDATE tab SET fullname = CONCAT('My Full Name is ' , fullname)
于 2012-10-16T08:37:59.017 回答