Example 1: mongodb match multiple fields
$match:
{
$and: [
{'ExtraFields.value': {$in: ["A52A2A"]}},
{'ExtraFields.fieldID': ObjectId("5535627631efa0843554b0ea")}
]
}
Example 2: search with multiple field in node js mongodb
> db.test.find({$or: [{Description: {$regex: '^225/65R16'}, Brand: {$regex: '^Hankook'}}]})
{ "Description" : "225/65R16 71T K715", "Brand" : "Hankook", "Ref" : 123455 }
{"Description" : "225/65R16 94T", "Brand" : "Hankook", "Ref" : 123455 }
> db.test.find({$or: [{Description: {$regex: '^225'}, Brand: {$regex: '^Han'}}]})
{ "Description" : "225/65R16 71T K715", "Brand" : "Hankook", "Ref" : 123455 }
{ "Description" : "225/65R16 94T", "Brand" : "Hankook", "Ref" : 123455 }
Example 3: search with multiple field in node js mongodb
db.test.find({
$or:[
{
$and: [
{'stocknumber':12346},
{'model':'bmx'},
{'make':2002},
{'rego':'KA01HG6268'},
{'adate':'2017-10-01T05:07:10.969Z'},
{'cdate':'2017-10-01T05:07:10.969Z'}
]
},
{
$and: [
{'stocknumber':12347},
{'model':'bmy'},
{'make':2003}
]
}
]
}).pretty()
Example 4: mongodb lookup multiple fields
db.collection2.aggregate([
{
$lookup: {
from: "collection1",
let: {
firstUser: "$user1",
secondUser: "$user2"
},
pipeline: [
{
$match: {
$expr: {
$and: [
{
$eq: [
"$user1",
"$$firstUser"
]
},
{
$eq: [
"$user2",
"$$secondUser"
]
}
]
}
}
}
],
as: "result"
}
},
{
$replaceRoot: {
newRoot: {
$mergeObjects:[
{
$arrayElemAt: [
"$result",
0
]
},
{
percent1: "$$ROOT.percent1"
}
]
}
}
}
]
)
Example 5: mongodb find multiple fields
{ <field1>: <value>, <field2>: <value> ... }