DROP TABLE IF EXISTS items;
CREATE TABLE items (item varchar(20));
INSERT INTO items VALUES ('apple'),('raspberry');
SELECT STRING_AGG(item, CHAR(13)) AS item_list FROM items;
如何在项目之间换行?
答案 0 :(得分:1)
只需将其放在字符串中:
SELECT STRING_AGG(item, '
') AS item_list
FROM items;
一个警告是“行尾”的定义取决于操作系统。因此,这将在Unix和Windows上插入不同的值。
Here是db <>小提琴。
答案 1 :(得分:1)
您的查询在我的环境中运行良好。您需要在Management Studio中启用此设置:
Tools > Options > Query Results > Results to Grid
这对我来说没有意义,但是他们改变了几个SSMS之前发布的默认行为。
答案 2 :(得分:0)
如果使用Management Studio查询编辑器,则“网格结果”选项将无法实现回车。切换到“文本结果”以正确查看结果集。
https://docs.microsoft.com/en-us/sql/t-sql/functions/string-agg-transact-sql?view=sql-server-ver15
从项目中选择STRING_AGG(item,CHAR(13))作为item_list;