如果我尝试这个:
( RowKey ge '1606780800000' )
我一秒钟就能得到结果。
但如果我尝试使用AND
,仍然使用这样的RowKey:
( RowKey ge '1606780800000' and RowKey le '1606784400000' )
它一直在加载。
我知道OR
会执行完全扫描,但AND
的情况相同吗?有什么办法绕过这个吗?
如果只使用2 RowKeys with AND
运算符(不带PartitionKey(,它将执行表扫描。
以下是一些建议:
1.如果可能,您可以使用范围查询。然后可以指定类似$filter=PartitionKey eq 'xxx' and RowKey ge '1606780800000' and RowKey le '1606784400000'
的筛选器。但是,如果有一个以上的PartitionKeys,则需要编写多个查询。
2.如果您仍然使用此查询:( RowKey ge '1606780800000' and RowKey le '1606784400000' )
。此时,如果requested items
超过1000,则查询一次最多只能返回1000个项目。因此,在这种情况下,您应该在查询中使用x-ms-continuation-NextPartitionKey
和x-ms-continuation-NextRowKey
。有关更多详细信息,请参阅此文档。