gpt4 book ai didi

javascript - 在 google 数据存储中查询 mongo 中的 $elemMatch

转载 作者:行者123 更新时间:2023-12-03 05:24:07 25 4
gpt4 key购买 nike

我想过滤数组中满足所有条件的元素。

就像我有一个数组

test: [{"organizationName":"strge","familyName":"raju"},{"organizationName":"sand","familyName":"sand"}]

我需要查询来过滤同一元素中的所有条件。我发现它是在 mongo 中使用 $elemMatch 完成的,但在 google 数据存储中没有找到类似的查询。

最佳答案

您可以将 Cloud Datastore 中数组值的相等过滤器视为 CONTAINS 过滤器。

因此,如果您有一个带有 members 属性的 GROUP 实体:

members: [
{ firstName: 'Alice', lastName: 'Smith' }
{ firstName: 'Bob' , lastName: 'Miller' }
]

你可以运行:

SELECT * FROM Group WHERE
members.firstName = 'Alice'
AND members.lastName = 'Smith'
AND members.firstName = 'Bob'
AND members.lastName = 'Miller'

它会返回上面的结果。

但是,此查询不会检查 firstNamelastName 值是否出现在同一 member 值中。因此,此查询还将返回一个 Group 实体,如下所示:

members: [
{ firstName: 'Alice', lastName: 'Jones' }
{ firstName: 'Bob' , lastName: 'Jones' }
{ firstName: 'Chris', lastName: 'Miller' }
{ firstName: 'Denise', lastName: 'Smith' }
]

为了防止这种情况,您必须运行第一个查询,然后进行客户端过滤。

关于javascript - 在 google 数据存储中查询 mongo 中的 $elemMatch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41228057/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com