0

正如标题中提到的,我想知道从 Azure 表中获取所有实体时是否可以过滤分区键?

我尝试在过滤器中添加它,但它不起作用:

$filter = "PartitionKey eq '" . $fields['authorId'] . "'";
$tableRest_result = $this->tableRestProxy->queryEntities($this->_tables['THEME']['SETTINGS'], $filters);
$entities = $tableRest_result->getEntities();

我正在使用 PHP 访问 Azure 表。

非常感谢您的帮助。谢谢!

4

1 回答 1

0

我认为这样做是可能的。表服务 REST API 支持query projection您可以从表中获取每个实体的属性子集 ( http://blogs.msdn.com/b/windowsazurestorage/archive/2011/09/15/windows-azure-tables-introducing- upsert-and-query-projection.aspx)。

我简要查看了 Github 上的 PHP SDK 代码(https://github.com/WindowsAzure/azure-sdk-for-php/blob/master/WindowsAzure/Table/Models/QueryEntitiesOptions.php),我认为您应该是能够使用方法指定您希望查询返回的字段addSelectField()。如果我没记错的话,这是QueryEntitiesOption您可以将其指定为queryEntities函数参数的一部分(https://github.com/WindowsAzure/azure-sdk-for-php/blob/master/WindowsAzure/Table/TableRestProxy. php ). 我不使用 PHP,所以我自己没有尝试过。试一试,看看是否有效。

希望这可以帮助。

于 2013-09-13T15:56:45.317 回答