【发布时间】:2019-04-05 14:31:59
【问题描述】:
我在一些查询中使用 string_agg 函数试图将其转换为 azure sql 数据仓库。我怎样才能实现这一点? 有人可以帮我解决这个问题吗?
【问题讨论】:
标签: sql-server azure azure-sql-data-warehouse
我在一些查询中使用 string_agg 函数试图将其转换为 azure sql 数据仓库。我怎样才能实现这一点? 有人可以帮我解决这个问题吗?
【问题讨论】:
标签: sql-server azure azure-sql-data-warehouse
自 7 月发布的 Azure 数据仓库起,实施了 STRING_AGG。
https://docs.microsoft.com/en-us/azure/sql-data-warehouse/release-notes-10-0-10106-0
【讨论】:
Azure 数据仓库不支持 string_agg。 https://docs.microsoft.com/en-us/sql/t-sql/functions/string-agg-transact-sql?view=sql-server-2017。 你可以使用https://docs.microsoft.com/en-us/sql/t-sql/language-elements/coalesce-transact-sql?view=sql-server-2017。
通过使用:COALESCE
DECLARE @Names VARCHAR(8000)
SELECT @Names = COALESCE(@Names + ', ', '') + ColumnName
FROM TABLE_NAME
Select @Names
【讨论】:
COALESCE 如何创建分隔列表? COALESCE 是 CASE 表达式的简写。