Node下使用MongoDB 数据库多条件模糊查询
主要用到了query.$or和query.$regex这两个find参数。 其中query.$or用于实现多条件查询,其值是一个数组,相关文档 (opens new window)
示例代码:
let mongoose = require('mongoose');
let Schema = mongoose.Schema;
let SchemaClass = new Schema({
name: {
type: String,
default: ""
},
type: {
type: String,
default: ""
}
});
let regExp = '动态值';
let filterArr = [
{name: {$regex: new RegExp(`${regExp}`, 'gi')}},
{type: {$regex: 'class'}}
];
let dataBase = mongoose.model('cshisas', SchemaClass);
dataBase.find({ $or: filterArr }, (err, data) => {
if (err) {
console.log(err);
} else {
console.log(data);
// JSON.parse(JSON.stringify(data))
// res.json({ data, result: true, code: 200 });
}
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
上次更新: 2024/01/30, 00:35:17
- 01
- Node与GLIBC_2.27不兼容解决方案08-19
- 02
- Git清空本地文件跟踪缓存08-13