sql >> データベース >  >> NoSQL >> MongoDB

symfony2で「like」という条件でmongodbをクエリする方法

    まず、MongoDBを見てみましょう。ここ :

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

    正規表現を定義することで、phpでも同じことができます。こちら :

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

    Doctrine MongoDB ODMでは、ほぼ同じ正規表現構文を使用できます。

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

    ドキュメントが1つしか見つからない場合でも、ドキュメントのコレクションが返されることに注意してください。上記の正規表現は、ユーザー名に$fnameが含まれているすべてのドキュメントにも一致します どこでも文字列。

    $fnameで始まるユーザー名が必要な場合 、'^' . $fname




    1. mongoexport構文エラーメッセージ

    2. SparkでRedis:タスクをシリアル化できません

    3. Redis zrevrangebyscore、辞書式順序以外の並べ替え

    4. $authorによるドキュメントおよびサブドキュメントグループからの$sum(MongoDB)