逻辑应用执行SQL TO JSON自动对输出进行分块

时间:2018-10-24 15:56:55

标签: sql-server azure azure-sql-database azure-logic-apps

我正在使用的逻辑应用程序旨在快速更新一个json文件,该文件基于SQL Server表(1000行,6列)。

SQL语句类似于:

从TABLENAME中选择JSON路径的ID,名称,FIELD1,FIELD2,FIELD3,FIELD4;

表中约有1000行,差异或变化很小。

当我在SSMS或本地运行此SQL时,我的输出是单行/合并json输出;当我通过Logic App运行相同的SQL时,它将输出分为10组json行。

screenshot of output from stored proc / execute sql

如果我使用没有COUNT ON的存储过程,则会产生相同的行为。

有人知道在逻辑应用程序中强制执行SQL任务的方法,而不是将返回的数据块/批处理成不同的结果集吗?

1 个答案:

答案 0 :(得分:0)

此后,我了解到Execute SQL会自动将其输出强制转换为Json。

要解决此问题,我更改了SQL以删除FOR JSON PATH,并使用ResultSet.Table1作为Compose Task的源。这样会用特定于Json的方括号包裹数组,现在输出是预期的。