Microsoft Graph API $filter=name eq 'foo' 查询不适用于 GET workbook/tables/{id}/columns。没有错误也没有过滤

Microsoft Graph API $filter=name eq 'foo' query not working on GET workbook/tables/{id}/columns. No error and no filtering

我正在查看保存在我的 OneDrive for Business 帐户中的 Excel 一本书中的 table (Table1)。然后我想从这个 table 中获得 CREATEDDATE 列中的最大值。

我想避免用 API 拉下整个 table,所以我试图将我的查询结果过滤到仅 CREATEDDATE 列。但是,table 的列结果没有被过滤到一列,我没有收到错误来帮助解决原因。我得到的只是一个 HTTP 200 响应和完整的未过滤 table 结果。

是否可以按列名过滤从 API 检索到的列? documentation 让我这么认为。

我已经确认 /columns?$select=name 工作正常并且 returns 只是名称字段,所以我知道它会将其识别为一个实体。 $filter$orderby 在引用响应中的任何实体时不执行任何操作(nameidindexvalues)。我知道我可以按位置限制列,但我宁愿按名称明确引用列,以防顺序发生变化。

我正在使用这个查询:

/v1.0/me/drive/items/{ID}/workbook/tables/Table1/columns?$filter=name eq 'CREATEDDATE'`

这里不用$filter,直接按名字拉就行了。 Get TableColumn 文档中的原型是:

GET /workbook/tables/{id|name}/columns/{id|name}
GET /workbook/worksheets/{id|name}/tables/{id|name}/columns/{id|name}

所以在你的情况下,你应该能够简单地调用 call:

/v1.0/me/drive/items/{ID}//workbook/tables/Table1/columns/CREATEDDATE