如何在MongoDb上查询字段不包含字符串

时间:2018-09-07 07:24:13

标签: regex mongodb

我想触发Mongo Db查询,该查询将在特定字段不包含字符串的情况下获取结果。对于前。

employeeName =“约翰·坎贝尔”

我希望所有带有employeeName的记录都不应包含字符串“ John”

3 个答案:

答案 0 :(得分:1)

您应该能够编写如下查询:

db.employees.find({"name": {$regex: /^((?!John).)*$/}})

“ ?!”否定超前

答案 1 :(得分:1)

您可以将$not直接用于正则表达式:

db.employees.find({"name": { $not: /^John.*/ }})

或与$regex

db.employees.find({ "name": $not:{$regex: /^John.*/ }}})

答案 2 :(得分:0)

您应该能够编写如下查询:

db.employees.find( { employeeName:/John/ } )

这利用了正则表达式查询运算符-https://docs.mongodb.com/manual/reference/operator/query/regex/