在 MongoDB 中查询非空值
-
MongoDB 中的
$ne
运算符 -
MongoDB 中的
$eq
运算符 -
在 MongoDB 中查询
is Not Null
值 -
$ne
运算符查询 MongoDB 中字符串字段上的is Not Null
值 -
在 MongoDB 中
$ne
运算符的数值字段上查询is Not Null
-
在 MongoDB 中
$ne
运算符查询非空值 -
在 MongoDB 中
$eq
运算符指定非 Null 值
这篇 MongoDB 文章将解释如何在 MongoDB 中查询非空值。要查询非空值,你可以使用 $ne
运算符和 $eq
运算符,然后指定要查询的所需值。
本文向读者展示了如何使用各种方法和示例在 MongoDB 中查询非空值。所以,让我们开始这个指南。
MongoDB 中的 $ne
运算符
该运算符的语法是:
{ field: { $ne: value } }
$ne
运算符选择 field
的值与给定 value
不同的所有文档。它包括不包含 field
的文档。
MongoDB 中的 $eq
运算符
此运算符指定相等条件。例如,$eq
运算符匹配 field
的值等于指定 value
的文档。
此运算符的语法是:
{ <field>: { $eq: <value> } }
指定 $eq
运算符等效于使用形式 { field: <value> }
,除非 <value>
是正则表达式。
在 MongoDB 中查询 is Not Null
值
现在让我们通过查看如何实现这一目标的示例来帮助你开始。
下面是你将用来说明一些操作的集合。
db={
"teams": [
{
team: "Manchester City",
position: "1st",
points: 70
},
{
team: "Liverpool",
position: null,
points: 69
},
{
team: "Chelsea",
position: "3rd",
points: 59
},
{
team: "Arsenal",
position: "4th",
points: null
},
{
team: "Tottenham",
position: "5th",
points: 51
},
{
team: "Manchester United",
position: "6th",
points: 50
},
]
}
$ne
运算符查询 MongoDB 中字符串字段上的 is Not Null
值
你将使用 $ne
运算符将表达式传递给 $ne
运算符,该运算符否定特定字段的空值,以查询在本示例中不为空的字符串字段。对于此示例,你可以使用下面的查询。
db.teams.find({
points: {
$ne: null
}
})
运行上述查询时返回的结果可以在下面的屏幕截图中看到。
你发现所有没有 points
字段值指定为空的此类文档。
在 MongoDB 中 $ne
运算符的数值字段上查询 is Not Null
在这种情况下,你将选择那些没有数值字段值为空的文档。对于此示例,你可以使用下面的查询。
db.teams.find({
position: {
$ne: null
}
})
运行上述查询时返回的结果可以在下面的屏幕截图中看到。
你可以再次在 position 字段中找到没有 null 作为值的文档。
在 MongoDB 中 $ne
运算符查询非空值
在此示例中,你将使用带有空白字符串的 $ne
运算符来查询 MongoDB 中的非空值。
由于你在上面使用的集合没有任何此类具有空白字符串值的文档,你可以在集合中添加一些。以下文档将添加到集合中,如下所示。
db={
"teams": [
{
team: "Manchester City",
position: "1st",
points: 70
},
{
team: "Liverpool",
position: null,
points: 69
},
{
team: "Chelsea",
position: "3rd",
points: 59
},
{
team: "Arsenal",
position: "4th",
points: null
},
{
team: "Tottenham",
position: "5th",
points: 51
},
{
team: "Manchester United",
position: "6th",
points: 50
}, {
team: "West Ham",
position: "",
points: 48
},
{
team: "Wolves",
position: "",
points: 46
}
]
}
好的,现在你的收藏中又添加了两个文档,你可以开始了。现在你可以使用 $ne
运算符通过指定一个空白字符串来查询非空值。
对于此示例,你可以使用下面的查询。
db.teams.find({
position: {
$ne: ""
}
})
运行上述代码时返回的结果可以在下面的屏幕截图中看到。
这次你无法找到新添加的文档。
在 MongoDB 中 $eq
运算符指定非 Null 值
在此示例中,你将使用 $eq
运算符来查询非空值,因为你将传递一个要查找的值,以用外行的术语查询该不是空
值。
让我们寻找排名第三的球队。对于此示例,你可以使用下面的查询。
db.teams.find({
position: {
$eq: "3rd"
}
})
运行上述代码时返回的结果可以在下面的屏幕截图中看到。
你在集合中找到了当前排名第三的团队。
因此,通过这篇 MongoDB 文章的帮助,你学习了如何使用 $ne
和 $eq
运算符查询非空值。