問題タブ [2dsphere]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - Mongodb Sphere インデックスがオブジェクトを拒否する
こんにちは、私は 2D 球体インデックスを持つコレクションを持っています
特定のオブジェクトを挿入しようとすると、エラーが発生します。
マルチポリゴン リングは閉じていますが (最初と最後の座標は同じです)
何か案は?
拒否された別のポリゴンを次に示します。
ここに貼り付けると問題ないようです: http://geojsonlint.com/
ポイントが2回使用されると、mongo dbが気に入らない可能性があります
mongodb - MongoDB バージョン 2.6 は、ジオキーを抽出できず、ジオメトリの形式が正しくない可能性があることを理由に、2dsphere ジオインデックス作成で引き続き失敗します。
バージョン 2.4 で、異なる経度/緯度データ セットを使用して参照エラーが発生していました。2.6 にアップグレードすると、そのデータ セットで 2dsphere インデックスを使用できるようになりました。ただし、別のデータ セット (以下の抜粋) では、2dshpere を使用してインデックスを作成しようとすると、古いエラー メッセージが表示されました。エラーメッセージの抜粋は次のとおりです。
エラーを受け取るのと同じ問題があります。オブジェクトからジオキーを抽出できません。不正なジオメトリ?. オブジェクトは次のとおりで、GeoJSONLint.com で検証されています。また、mongodb バージョン 2.6.1 を使用しています。これは最近、バージョン 2.4 を使用していたときに発生し、2.6 にアップグレードしたところ問題は解決しましたが、新しい geojson データ セットで再びエラーが発生しています。誰かが私にそれを解決する方法を教えてくれれば、それは非常に役に立ちます。
上記で db.exposureByZip.ensureIndex({"geometry" : "2dsphere"}) を実行すると、次のエラーが発生します。
php - PHP の近く - mongodb の空間インデックスとクエリ
私は近くの場所を照会するためにphpを使用しています。
私はmongoDBに次のgeoJSONを持っています
ポイントについて近くの場所を照会したいのですが、phpにインデックスがあります
私のクエリは次のとおりです。
$arr->explain() は私に望ましい結果を与えていません。誰かが助けることができれば、何がうまくいかないのですか。
以下が結果です
'BasicCursor' を返していますが、代わりに 'S2Cursor' を与える必要があります
mongodb - クエリが間違った結果を返す
多角形 (単純なボックス) 内のアイテムのマッチングの問題に悩まされています。クエリされたボックス内にあるアイテムが結果にならない理由がわかりません。だからここに私が持っているもの:
これが私のドキュメントです(さまざまな形式をテストしました):
そして、ここにクエリがあります:
しかし問題は、それがゼロの結果を返すことです!
よくわからない場合は、これをコピーするよりも、その点が実際には正方形になっています。
ここで確認してください。
私は混乱しています、誰かがこれを手伝ってくれませんか?
前もって感謝します!
更新:
また、これらのポイントは、たとえば次のようにポリゴン領域を減らすと見つかります。
必要であれば、そのようなポイントを 100 ほど提供できます。たとえば、もう 1 つの奇妙な点:
更新:
これは、ポイント コレクション ダンプ (約 700 ポイント) を含むファイルです。
mongodb - MongoDb $near とクエリ
以下のような構造のドキュメントのコレクションがあります
次のクエリを実行して、開始がポイントから 2000 単位で、終了がポイントから 1 単位であるドキュメントを検索しようとしています。
クエリを実行すると、常に or を実行しているかのようにドキュメントが返されます。つまり、start はポイントから x 単位、end はポイントから x 単位です。したがって、次の 2 つのドキュメントに対して実行すると、最初のドキュメントのみが返されると予想される場所で両方が返されます。
私はこれを次のようにできるはずだと確信しています
http://blog.mongodb.org/post/50984169045/new-geo-features-in-mongodb-2-4
「さらに、同じ複合インデックスで複数の 2dsphere インデックスを持つことができます。これにより、次のようなクエリが可能になります。「JFK から 50 マイル以内の開始位置と YYC の 100 マイル以内の終了位置を持つルートを検索する」。
明確にするために。上記のクエリは、START ロケーション $near point AND END ロケーション $near point に対して AND クエリを実行することになっています。しかし、それが実際に行っているように見えるのは、場所 $near point を開始するか、場所 $near point を終了することです。
1 つのドキュメントで 2 つの $near クエリに対して AND クエリを実行するにはどうすればよいですか?
2dsphere - YiiMongoDbSuite + 2dsphere が機能しない
私は YiiMongoDbSuite 1.3.6 を持っています
EMongoCriteria.php に追加の基準を追加します
のようなメッセージを返す
また、フィールドにはインデックスが付けられます
リクエスト時にコンソールで
有効な結果を返す