速度低下は、テーブルデータのフェッチではなく、数学演算が原因である可能性があります。基準の一部は、レコードフィールドに対してではなく、他のレコードに対する数学演算の結果に対してであるため、O(N)になります。
Postgresがインデックスを使用せず、代わりにSeqスキャンを選択する理由は、クエリ中にほとんどのテーブルレコードをフェッチする必要があると判断したためです。テーブル内のほとんどのレコードをフェッチする場合、インデックスはあまりメリットがない可能性があります。
物事をスピードアップするには、空間インデックスとPostGis の近隣ベースの検索の使用を検討する必要があります または、ジオディスタンスクエリ 。