通过在其之前添加文本来更新所有行

时间:2012-10-16 08:35:09

标签: mysql sql

以下是我的表格

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');

我想将fullname更新为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 个答案:

答案 0 :(得分:6)

使用 CONCAT

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

SQLFiddle Demo

答案 1 :(得分:3)

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

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

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

答案 2 :(得分:2)

参考CONCAT

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

答案 3 :(得分:1)

UPDATE tab SET fullname = CONCAT('My Full Name is ' , fullname)
相关问题