sql >> Databáze >  >> NoSQL >> MongoDB

Object.keys, jak získat seznam klíčů v mongodb

Dotaz jako {"colors.*.prestock" : {$gte:30}} není možné podle SERVER-267 a pochybuji, že to bude v příštích letech podporováno.

Nejlepším řešením je změnit schéma na pole:

colors: [
 { "color" : "Green", "instock" : 50, ... },
 { "color" : "Yellow", "instock" : 50, ... },
]

Pak můžete dotaz

db.foo.find( {"colors.prestock" : {$gte:30}} )

Všimněte si, že to vrátí celý objekt, včetně všech barev, tedy i těch, pro které neplatí omezení dotazu. To by se dalo vyřešit pomocí agregačního rámce, ale opět pouze pomocí $unwind což také vyžaduje colors být polem.



  1. jak převést řetězec na číselné hodnoty v mongodb

  2. Jak načíst data do MongoDB běžícího v hostiteli z Dockeru běžícího na stejném počítači?

  3. MongoDB $substrBytes

  4. Stav 500 Interní chyba serveru v IE-11 s aplikací Angular Js