在 Azure SQL 数据仓库中聚合字符串
Aggregate strings in Azure SQL Data Warehouse
有没有一种方法可以在 Azure SQL 数据仓库中聚合字符串,类似于 SQL 服务器中的 string_agg
功能?
我有一些包含字符串的记录,我想将它们连接成一个字符串。
SELECT string_agg(string_col, ',') FROM table1
https://docs.microsoft.com/en-us/sql/t-sql/functions/string-agg-transact-sql
2019 年 1 月更新: 截至 2019 年 1 月 STRING_SPLIT
根据 here.[=16= 在 SQL 数据仓库中可用]
2019 年 7 月更新: 截至 2019 年 7 月,STRING_AGG
根据 here.[=16= 在 SQL 数据仓库中可用]
Azure SQL 数据仓库是一个 MPP 系统,旨在保存数十亿条记录和数 TB 的数据,因此作为第一个停靠点,您应该认真考虑它是否适合进行字符串操作。它也有点贵,具体取决于您 运行 所在的 DWU。通读这篇反模式文章。
Azure SQL 数据仓库工作负载模式和反模式
https://blogs.msdn.microsoft.com/sqlcat/2017/09/05/azure-sql-data-warehouse-workload-patterns-and-anti-patterns/
如果您真的需要在您的仓库中执行此操作,那么我最近确实使用过程方法专门针对 Azure SQL 数据仓库做了一个示例:
实现此目的的另一种方法是使用 Azure SQL 数据仓库中提供的 PIVOT
功能。 TechNet article 中对此进行了详细描述:使用 T-SQL
在 APS/PDW AU4 中在行上连接列
有没有一种方法可以在 Azure SQL 数据仓库中聚合字符串,类似于 SQL 服务器中的 string_agg
功能?
我有一些包含字符串的记录,我想将它们连接成一个字符串。
SELECT string_agg(string_col, ',') FROM table1
https://docs.microsoft.com/en-us/sql/t-sql/functions/string-agg-transact-sql
2019 年 1 月更新: 截至 2019 年 1 月 STRING_SPLIT
根据 here.[=16= 在 SQL 数据仓库中可用]
2019 年 7 月更新: 截至 2019 年 7 月,STRING_AGG
根据 here.[=16= 在 SQL 数据仓库中可用]
Azure SQL 数据仓库是一个 MPP 系统,旨在保存数十亿条记录和数 TB 的数据,因此作为第一个停靠点,您应该认真考虑它是否适合进行字符串操作。它也有点贵,具体取决于您 运行 所在的 DWU。通读这篇反模式文章。
Azure SQL 数据仓库工作负载模式和反模式 https://blogs.msdn.microsoft.com/sqlcat/2017/09/05/azure-sql-data-warehouse-workload-patterns-and-anti-patterns/
如果您真的需要在您的仓库中执行此操作,那么我最近确实使用过程方法专门针对 Azure SQL 数据仓库做了一个示例:
实现此目的的另一种方法是使用 Azure SQL 数据仓库中提供的 PIVOT
功能。 TechNet article 中对此进行了详细描述:使用 T-SQL