我有一个查询,我想在谷歌数据存储上运行,旨在从多个设备检索数据。但是,我无法在文档中找到任何可以从中获取数据的文档。设备-1或设备-2或设备-3,即只能设置1个属性名称。这是数据存储限制吗?或者我只是遗漏了一些我不了解的东西?
基于NodeJS客户端库,查询可能类似于以下过滤条件:
var query = datastore.createQuery('data')
.filter('device_id', 1)
.filter('device_id', 2)
.filter('device_id', 3);
否则,我可能不得不为各种设备运行单独的查询,这看起来不是一个非常优雅的解决方案,特别是如果有很多设备同时运行查询。
欢迎任何有关数据存储API或替代方法的建议!
答案 0 :(得分:1)
是的,这将是OR
操作,是Restrictions on queries之一(强调我的):
索引查询机制的性质强加了某些限制 关于查询可以做什么。 Cloud Datastore查询不支持 子字符串匹配,不区分大小写的匹配或所谓的全文 搜索。
NOT
,OR
和!=
运算符不是原生的 支持,但某些客户端库可能会在Cloud之上添加支持 数据存储。此外: