我希望收集每个有错误的所有记录CorrelationId
。在 Kusto 中,看起来像这样:
logs_CL
| summarize
Errors=make_list_if(Error, isnotempty(Error)),
by CorrelationId
当查看AzureSql聚合函数时,似乎这些make_list
/make_set
命令系列都不可用https://learn.microsoft.com/en-us/sql/t-sql/functions/aggregate-functions-transact-sql?view=sql -服务器版本16
有没有办法将多条记录的内容聚合 到一条记录中?也就是说,我们需要保留每个记录的信息,而不仅仅是计算应用于整个记录集的统计数据(例如最小最大标准偏差平均值)。
如果您使用的是 SQL Server 2017+ 版本,则可以使用 STRING_AGG 聚合函数(请参阅https://learn.microsoft.com/en-us/sql/t-sql/functions/string-agg-transact-sql上的文档?view=sql-server-ver16 ) 将信息连接到单个列中。
一个非常基本的例子:
这会输出一些表及其由“,”分隔的列