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

Jak se dotazovat na mongodb s podmínkou „jako“ v symfony2

Nejprve se podívejme na MongoDB:Vyhledávání pomocí regulárního výrazu lze provést definováním regulárního výrazu, jak je vysvětleno zde :

db.users.find({"username": /^a/})

Totéž lze provést v php definováním regulárního výrazu, vysvětluje zde :

$collection->find(array('name'=> array('$regex' => '^a'));

Můžete použít téměř přesně stejnou syntaxi regulárního výrazu s Doctrine MongoDB ODM:

$user = $this->get('doctrine.odm.mongodb.document_manager')
        ->getRepository('WishbotWebBundle:User')
        ->findByUsername(array('$regex' => $fname));

Vezměte prosím na vědomí, že sbírka dokumentů se vrací, i když je nalezena pouze jedna. Výše uvedený regulární výraz také odpovídá všem dokumentům, kde uživatelské jméno obsahuje $fname řetězec kdekoli.

Pokud chcete uživatelská jména, která začínají $fname , musíte použít '^' . $fname .




  1. Kdy indexovat, co indexovat v Mongoidu?

  2. Streamování výsledku agregované operace pomocí spring-data-mongodb

  3. Mongo dotaz na podpole

  4. Špatný výpočet vzdálenosti s MongoDB