Du kan använda $elemMatch
frågeoperatör. Det behöver bara en fråga.
db.test.find( { arr: { $not: { $elemMatch: { $ne: null } } } } )
"$elemMatch" + "$ne"
Den här delen inkluderar alla dokument där arr
array har inte minst ett nollvärde.
Det här är alla dokument som har minst ett värde som inte är null.
$not
Den här delen kommer att behålla alla dokument som inte finns i "$elemMatch" + "$ne"
.
Dessa är alla dokument som har alla värden som null
.
Vänligen tillgodose edge-fall där fältet inte finns för att se till att saker fungerar som förväntat.