gpt4 book ai didi

mongodb - 为什么mongodb会找到这个文件($ne : null for array)

转载 作者:行者123 更新时间:2023-12-04 09:56:11 27 4
gpt4 key购买 nike

数据:

db.inventory.insertMany([
{ _id: 1, item: null },
{ _id: 2 },
{ _id: 3, item: 3 },
{ _id: 4 items: [1, 2, 3] },
{ _id: 5, items: [] }
])

查询 1:
db.inventory.find({ 'item': {$ne: null} })

结果 1:
{ _id: 3, item: 3 }

查询 2:
db.inventory.find({ 'items.0': {$ne: null} })

结果 2:
{ _id: 3, items: [1, 2, 3] },
{ _id: 4, items: [] }

为什么mongoDB会找到这个文档:{_id:4,items:[]}?
这是一个错误吗?

最佳答案

使用 $exists: true而不是 $ne: null .

$ne docs解释:

$ne selects the documents where the value of the field is not equal to the specified value. This includes documents that do not contain the field.

关于mongodb - 为什么mongodb会找到这个文件($ne : null for array),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61919521/

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