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

DoctrineMongoDBODMを使用したgeonearメソッドの距離が間違っています

    geoNear() クエリビルダーメソッドは、フィールドでの使用を目的としたものではありません。 near() field()に従うビルダーメソッドです 集中。これらのビルダーメソッドの両方が Builder.php doctrine/mongodbプロジェクト内。 geoNear()に注意してください クエリタイプを変更します(update()と同様です します)。次に、クエリタイプがQueryでチェックされます。 php (switchステートメントに従います)そして、コレクションに対してクエリを発行する方法を決定します。一部は実際のクエリ操作ですが、map/reduceやgeoNearなどはコマンドです。

    次のコードが機能するかどうかを確認します。

    $dm->createQueryBuilder('MyBundle:Location')
        ->geoNear($geocodes['lat'],$geocodes['lon'])
        ->field('id')->in($arrayIds)
        ->getQuery()->execute()->toArray();
    

    そうでない場合は、Query.phpがCollection::near()に渡す値をデバッグしてください。 方法。または、Query::getQuery()を使用して、ビルダーによって生成されたクエリ配列全体をデバッグすることもできます。 メソッド。




    1. マングースは参照プロパティでドキュメントを検索します

    2. redis vs hazelcast

    3. 上限のあるMongoDBコレクションの上限を解除します

    4. mongo dbから詳細をフェッチし、nodejsForkメソッドでオブジェクトに送信または保存する方法