MongoDB NIN -operatør

MongoDB NIN -operatør
$ NIN -operatøren i MongoDB brukes til å velge dokumentene der en verdi av et spesifisert felt ikke er i en gitt matrise.

La oss utforske hvordan vi kan bruke denne operatøren.

Operatørsyntaks

Følgende viser syntaks for $ NIN -operatøren:

Felt: $ nin: [,…]

La oss utforske hvordan vi kan bruke denne operatøren.

Tenk på samlingen med dokument som vist i spørringen nedenfor:

db.CreateCollection ("Innlegg")
db.Innlegg.INSERTMANY ([
Tittel: "Post_1", forfatter: "Author_1", år: 2022, kategori: ["Cat1", "Cat2"],
Tittel: "Post_2", forfatter: "Author_2", år: 2022, kategori: ["Cat1", "Cat3"],
Tittel: "Post_3", forfatter: "Author_3", år: 2022, kategori: ["Cat3", "Cat2"]
])

Velg Umatching dokumenter ved hjelp av $ NIN -operatøren

Eksemplet nedenfor viser hvordan du bruker $ NIN -operatøren til å velge dokumenter der verdien av forfatterfeltet ikke er lik 1 eller 3.

db.Innlegg.finn (forfatter: $ nin: ["forfatter_1", "forfatter_3"]);

Spørringen ovenfor skal velge dokumentene som ikke samsvarer med den spesifiserte tilstanden og returnerer den aktuelle utdataene.

Et eksempel er som vist:


"_id": ObjectId ("632BF2014E8DEE924A2279AD"),
"Tittel": "Post_2",
"Forfatter": "Author_2",
"År": 2022.0,
"Kategori": [
"Cat1",
"Cat3"
]

Velg element ikke i en gitt matrise ved hjelp av $ nin -operatøren

Vi kan også bruke $ NIN -operatøren til å filtrere ut alle dokumenter som ikke inkluderer et gitt element i matrisen.

I spørringen nedenfor bruker vi for eksempel $ NIN -operatøren til å filtrere ut ethvert dokument som ikke inneholder CAT2 i kategorien Array.

db.Innlegg.finn (kategori: $ nin: ["cat2"]))

Som forventet, bør spørringen ovenfor returnere alle dokumenter som ikke inneholder det spesifiserte elementet i matrisen.


"_id": ObjectId ("632BF2014E8DEE924A2279AD"),
"Tittel": "Post_2",
"Forfatter": "Author_2",
"År": 2022.0,
"Kategori": [
"Cat1",
"Cat3"
]

Oppdater data ved hjelp av $ NIN -operatøren

Vi kan også bruke $ NIN -operatøren med UpdateOne eller UpdateMany () -metode. Et eksempel er som vist nedenfor:

db.Innlegg.updatemany (kategori: $ nin: ["cat2"], $ set: exclude: true)

I dette tilfellet skal spørringen oppdatere samlingen med dokumentene som ikke samsvarer med den spesifiserte tilstanden.

Konklusjon

I dette innlegget diskuterte vi hvordan vi kan bruke $ NIN -operatøren i MongoDB for å velge uovertruffen dokumenter, velge dokumenter som ikke er i en gitt matrise, og etc.