sql >> Database teknologi >  >> NoSQL >> MongoDB

Sådan forespørges mongodb med betingelsen "like" i symfony2

Først og fremmest, lad os se på MongoDB:Søgning med regex kan gøres ved at definere et regex, som forklaret her :

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

Det samme kan gøres i php ved at definere et regex, forklaret her :

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

Du kan bruge næsten nøjagtig samme regex-syntaks med Doctrine MongoDB ODM:

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

Bemærk venligst, at en samling af dokumenter returneres, selvom der kun findes ét. Regex ovenfor matcher også alle dokumenter, hvor brugernavnet indeholder $fname snor hvor som helst.

Hvis du vil have brugernavne, der starter med $fname , skal du bruge '^' . $fname .




  1. Fejlmeddelelse:MongoError:dårlig godkendelse mislykkedes via URI-streng

  2. sorter efter indlejret objektværdi i Mongodb

  3. Nodejs paginering

  4. node.js gemmer objekter i redis