その種のクエリを最適化するのは難しいでしょう。より良いオプションは、(x,y)
からバウンディングボックスを計算することです。 座標とdelta
渡されます。次に、座標がそのボックスに含まれる場所をクエリします。このクエリははるかに単純で、xフィールドとyフィールドにある可能性のある任意のインデックスを使用できます。
もちろん、そのクエリの結果は、円ではなくバウンディングボックスであるため、それほど正確ではありません。より良い結果が必要な場合は、バウンディングボックスクエリから結果を取得し、低速のユークリッドメソッドを使用して、円に該当しないものを除外できます。