妙用MSSQL将多行字符串合并为一行(mssql多行字符合并)

数据库的应用非常广泛,即使是轻量级的MSSQL也能实现很多复杂的操作,如将多行字符串合并为一行。

下面有一行表格customer下有两列,分别是id和name:

| id | name |

| :—: | :—: |

| 1 |lili |

| 2 |andy |

| 3 |bob |

将它们增加到一个字符串并使用逗号隔开,即name=“ lili,andy,bob”,可以使用MSSQL字符串函数STUFF来完成。

具体使用步骤如下:

1.使用SELECT语句查询customer表中name字段的所有值,并使用逗号隔开

“`sql

SELECT

STUFF (( SELECT ‘,’ + [Name]

FROM [Customer] FOR XML PATH(”)),1,1,”) as Names

FROM [Customer]

2.将查询结果添加到一个变量中,并将变量的值赋值给name:
```sql
DECLARE @Names VARCHAR(MAX)
SELECT @Names = STUFF (( SELECT ',' + [Name]
FROM [Customer] FOR XML PATH('')),1,1,'')
SELECT @Names As Names

以上只是MSSQL Merge多行字符串的一个例子,MSSQL中还有许多字符串函数来实现更多的操作,例如联合,拆分,替换,重复等,大大提高了数据库操作效率,灵活运用,节省时间成本。


数据运维技术 » 妙用MSSQL将多行字符串合并为一行(mssql多行字符合并)