1

正如标题所说,我正在尝试按集合中的值过滤 SQL 表。我正在尝试使用 Filter() 函数和in公式来实现这一点。

ClearCollect(NewCollection, Filter('SqlTable', ID in ExistingCollection.ID))

...其中 ID 是属于“SqlTable”的列。

我收到错误“'in' 运算符的右侧不是列名”。我的 Collection 'ExistingCollection' 中有数据,SqlTable 也有数据。

可能的问题可能是 Expenses 表的大小,它有 20k 多行,但这个过滤器应该返回其中的一个非常小的子集,大约 200 行。我在这里遇到了 5000 行的限制吗?或者这种过滤是不可能的?

4

1 回答 1

0

您可以忽略错误消息,因为它不正确。无论如何,这不是错误,而是蓝色下划线警告。这意味着查询不会被委托,因此结果只会来自 SqlTable 的前 500 条记录。

您可以通过在 ExistingCollection.ID 中包含一个存在于 SqlTable 的前 500 条记录中的值来对此进行测试。

PowerApps 文档目前说 in 运算符是为 SQL Server 委派的,但实际上它并没有用作成员运算符。

请参阅本参考资料的第 5 点。

该参考资料谈到了 Azure,但同样的限制也适用于 SQL Server。

于 2017-10-06T19:14:26.807 回答