• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

154
Views
Mongo query - fetch records not exactly matches with specified values in filter list

I tried around a bit, but I couldn't find the way to do this with same specific set of elements.

I have the following documents in db,

{
  sys_cd : ["A","B"]
},
{
  sys_cd : ["A", "S"]
},
{
  sys_cd : ["A","B","S"]
},
{
  sys_cd : ["A"]
},
{
  sys_cd : ["B","S"]
},
{
  sys_cd : ["S"]
}

I would like a query that returns only the following records, any doc that contains values other than A, B , A & B should return

{
  sys_cd : ["A", "S"]
},
{
  sys_cd : ["A","B","S"]
},
{
  sys_cd : ["B","S"]
},
{
  sys_cd : ["S"]
}
 

I tried with element match but it's not working.. is there a way to achieve this? Please help..

over 3 years ago · Santiago Trujillo
2 answers
Answer question

0

Try this:

let inputArray = ["A", "B"]; // or ["B", "A"]

db.myCollection.find({
    sys_cd: {
        $elemMatch: {
            $nin: inputArray
        }
    }
})
over 3 years ago · Santiago Trujillo Report

0

Try $nin operator, and add list of arrays,

db.collection.find({
  sys_cd: {
    $nin: [
      ["A"],
      ["B"],
      ["A", "B"]
    ]
  }
})

Playground

over 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error