如何将两列的组合值复制到同一个表

时间:2016-01-22 15:59:12

标签: mysql sql sql-server

我有包含列id,firstName,lastName,fullName的表,我想将firstName和lastName列的组合值复制到fullName列。是否可以使用不带存储过程的查询?

据我所知,我们可以使用以下内容将一列值设置为其他值:

UPDATE table_name SET column1 = column2

4 个答案:

答案 0 :(得分:3)

使用mysql的CONCAT功能:

UPDATE table_name SET column1 = CONCAT(column2, ' ', column3);

答案 1 :(得分:1)

SQL Server ...

COMPUTED专栏:

ALTER TABLE dbo.tbl
    ADD FullName AS firstName + ' ' + lastName
GO

或永久UPDATE

UPDATE dbo.tbl
SET FullName = firstName + ' ' + lastName

答案 2 :(得分:1)

您可以使用concat或concat_ws来组合列。 如果你使用concat

UPDATE table_name SET fullName = concat(firstName, ' ', lastName);

如果你使用concat_ws

UPDATE table_name SET fullName = concat_ws(' ',firstName,lastName);

答案 3 :(得分:0)

没有UPDATE只查询:

SELECT firstName + ' ' + LastName, * 
  FROM table_name;

使用UPDATE:

 UPDATE  Table_Name  
  SET  New_Column = firstName + ' ' + LastName;