如何将此 SQL 代码转换为 Power Apps?

How to convert this SQL code to Power Apps?

我有一个 SQL 查询,显示了我数据库中某个组的最新记录。为了获取每个组的最新记录,我使用了 ID 列,这是一个自动递增的列。 ID号最高的为最新记录

但是我无法将其转换为 Power Apps 库中的类似代码。

SELECT        *
-- from my table
FROM            dbo.MyTable
-- where ID is the maximum ID grouped by product_ID
WHERE        (ID IN
                             (SELECT        MAX(ID)
                               FROM            dbo.MyTable
                               GROUP BY product_ID))

and Product_Type = 'Vegetables'

我的尝试,完成了吗?

ForAll(    
    GroupBy(
        SortByColumns(
            Filter(MyTable, Product_Type ='Vegetables'),
            'product_ID', Ascending, 'ID', Descending),
        'product_ID', '_recs'
    ),
    Patch(First(_recs), {product_ID: product_ID})
)

我知道其中一些功能不是“可委托的”,这可能是问题所在。

尝试

Distinct(
  MyTable,
  product_id
).Result

这应该会为您提供所有唯一产品 ID 的数组。 现在,如果您将它放在画廊中,您可以向显示具有默认文本值的文本标签的每一行添加一个标签:

First(
SortByColumns(
  Filter(
    MyTable,
    product_id=ThisItem.product_id
  ),
  "ID",
  "Descending"
  )
).ID

基本上,您获取产品 ID 并查找每一行的最大 ID。

有多个选项,这可能需要一些调整,但这将帮助您入门。