2016-01-22 53 views
0

我有列id,firstName,lastName,fullName的表,我想将列firstName和lastName的组合值复制到fullName列中。是否可能通过使用查询没有存储过程?如何将两列的组合值复制到同一个表中的一列

据我所知,我们可以使用类似的一列值设置为其它:

UPDATE table_name SET column1 = column2 
+1

MySQL和SQL服务器往往需要不同的方法。请移除不适用的标签。 –

+0

你为什么要这样做? – Strawberry

回答

3
的MySQL

使用CONCAT功能:

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

对于SQL Server ...

COMPUTED列:

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

或永久UPDATE

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

没有只更新查询:

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

具有更新:

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

您可以使用CONCAT或CONCAT_WS到列组合在一起。 如果使用CONCAT

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

,如果你使用CONCAT_WS

UPDATE table_name SET fullName = concat_ws(' ',firstName,lastName); 
相关问题