Počínaje MongoDB v 3.2 můžete použít bitsAllSet nebo bitsAnySet podle toho, co hledáte.
Takže s ovladačem C# MongoDB:
//Check single Flag as OP
collection.Find(Builders<MyEntity>.Filter.BitsAllSet(myEntity => myEntity.Flags, (long) MyFlags.AFlag));
//Check all multiple Flags
collection.Find(Builders<MyEntity>.Filter.BitsAllSet(myEntity => myEntity.Flags, (long) MyFlags.AFlag | MyFlags.BFlag));
//Check any multiple Flag
collection.Find(Builders<MyEntity>.Filter.BitsAnySet(myEntity => myEntity.Flags, (long) MyFlags.AFlag | MyFlags.BFlag));
Poznámka :Vyskytl se otevřený problém používat indexy v bitových operacích. Na MongoDB 4.2 je stále nepoužívají, takže mějte na paměti, pokud je plánujete masivně používat (my jsme byli a museli jsme poté vše přefaktorovat).