在microsoft SQL Server(MSSQL)中通过合并两个或多个列可以方便地将每组信息合并成一列。如果查询语句中的结果拆分成了多列,有时将它们合并成一列可以减少处理成本和提高数据处理性能。
SQL Server有两种合并两列成一列的常见方法:使用 + 或 CONCAT()函数。
+
使用联接符(+)符号可以将两个字段合并起来:
SELECT [Column1] + [Column2] AS [MergedColumn]
FROM [TableName]
任意字段(整型或字符型)都可以使用联接符来合并,但NULL值不能使用此函数。如果一个或多个列中的任何一列值为NULL,则最终结果将是NULL。
CONCAT()
使用CONCAT()函数可以实现与使用+符号类似的功能,格式为:
SELECT CONCAT([ColumnA], [ColumnB]) AS [MergedColumn]
FROM [TableName]
不同的是CONCAT()函数可以处理空值,所以即使某列的值为NULL,也可以正常工作,而该函数的性能也比 + 符号的性能更好。
如果要将两列以外的多个列合并在一起,就可以使用多个CONCAT()函数:
SELECT CONCAT(CONCAT([ColumnA], [ColumnB]), [ColumnC]) AS [MergedColumn]
FROM [TableName]