mongodb not LIKE
时间: 2023-07-04 17:16:42 浏览: 64
在 MongoDB 中不存在像 SQL 中的 NOT LIKE 操作符,但可以使用正则表达式来模拟 NOT LIKE 操作。具体做法是使用 $not 操作符和正则表达式来表示不匹配的条件。
例如,假设要查询 name 字段不包含 "john" 的文档,可以使用以下查询语句:
```
db.collection.find({ name: { $not: /john/ } })
```
这将返回所有 name 字段不包含 "john" 的文档。如果要查询 name 字段不以 "john" 开头的文档,可以使用以下查询语句:
```
db.collection.find({ name: { $not: /^john/ } })
```
这将返回所有 name 字段不以 "john" 开头的文档。
相关问题
mongodb like
在MongoDB中,可以使用$regex操作符来实现类似于SQL中的LIKE操作。$regex操作符用于在查询表达式中匹配正则表达式模式的字段值。
以下是一个示例,演示如何在MongoDB中使用$regex操作符进行模糊查询:
```python
db.collection.find({ "field": { $regex: /pattern/ } })
```
其中,`db.collection`是要查询的集合名称,`field`是要匹配的字段名,`pattern`是要匹配的模式。
请注意,正则表达式模式应该使用斜杠`/`包围起来,并且可以在模式中使用各种正则表达式元字符和修饰符。
qmgo not like
`qmgo`是Golang中的MongoDB驱动程序,它没有提供NOT LIKE操作符,但是可以使用正则表达式来模拟NOT LIKE操作。
例如,假设要查询name字段不包含"john"的文档,可以使用以下查询语句:
```
coll := client.Database("database_name").Collection("collection_name")
filter := bson.M{"name": bson.M{"$not": primitive.Regex{Pattern: "john", Options: ""}}}
cur, err := coll.Find(ctx, filter)
```
这将返回所有name字段不包含"john"的文档。如果要查询name字段不以"john"开头的文档,可以使用以下查询语句:
```
coll := client.Database("database_name").Collection("collection_name")
filter := bson.M{"name": bson.M{"$not": primitive.Regex{Pattern: "^john", Options: ""}}}
cur, err := coll.Find(ctx, filter)
```
这将返回所有name字段不以"john"开头的文档。