我想用相同的正则表达式查询多个字段.在这个查询中,我希望接受单个文本输入,并判断firstName和lastName字段的结果.我可以在mongoose文档中使用regex函数查询单个字段,但是'or'子句的语法给我带来了麻烦.

var re = new RegExp(req.params.search, 'i');

app.User.find().or([{ 'firstName': { $regex: re }}, { 'lastName': { $regex: re }}]).sort('title', 1).exec(function(err, users) {
    res.json(JSON.stringify(users));
});

(我在node.js 0.6.12上运行mongoose 2.7.1)

推荐答案

以上代码适用于多个字段的查询.结果发现我有一些坏数据.

Mongodb相关问答推荐

Spring Data MongoDB中的@ Transactions(+测试容器)

MongoDB$unionWith,如何 Select 特定文档

在MongoDB中是否可以按递增顺序更新多个文档?

如何在Golang保存到MongoDB时排除空数据值的问题?

为什么 mongoose 在 mongodb 中找不到我的数据

多键索引,性能问题

Mongoose - $project 嵌套的对象数组到数组的根级别

MongoID find 或 find_by

更新文档中的数组时,如何在 MongoDB 和 C# 中使用 $push 更新修饰符

如何将查询结果(单个文档)存储到变量中?

无法提取地理键,经度/纬度超出范围

.save() 不是函数 Mongoose

将MongoDB连接到前端?

Docker 内部的 Mongo 身份验证

如何在array.NET驱动程序中的元素属性上创建MongoDB MultiKey索引

如何使用 java 驱动程序更新 mongo db 中的文档字段?

将 mongodb 聚合框架结果导出到新集合

mongo dbname --eval 'db.collection.find()' 不起作用

从 nodejs 到 mongodb 或 mongoose 的动态数据库连接

MongoDB打印两点之间的距离