Dela via


$bitsAnyClear som bitvis frågeoperator

GÄLLER FÖR: MongoDB vCore

Det här kommandot används för att matcha dokument där någon av bitpositionerna som anges i en bitmask är tydliga (d.s.a. 0). Det är användbart för att fråga dokument med binära data eller flaggor som lagras som heltal. Den här operatorn möjliggör effektiv frågekörning baserat på specifika bitmönster.

Syntax

{
  <field>: { $bitsAnyClear: <bitmask> }
}
  • <field>: Fältet i dokumentet som ska frågas.
  • <bitmask>: En bitmask där varje bitposition representerar en position för att kontrollera om den är klar (0).

Exempel

Överväg en samling med namnet stores med dokument som liknar den angivna JSON-strukturen. Om du vill hitta butiker där fältet totalStaff.fullTime har någon av de första 3 bitarna klart kan du använda följande fråga:

db.stores.find({
  "store.staff.totalStaff.fullTime": { $bitsAnyClear: 0b00000111 }
})

I det här exemplet 0b00000111 representerar bitmasken de första 3 bitarna. Frågan returnerar dokument där någon av de första 3 bitarna i totalStaff.fullTime fältet är tydliga.