ブラウザでレンダリングするために境界ボックス内のデータベース ポイントから取得するコードがあります。属性(名前など)を持つポイントのリストも表示します
ただし、フィルターがデータセットに適用されると、大きなカウント ポイントが得られる場合があります (例: 約 50000)。ブラウザで 50000 ポイントをレンダリングすると、パフォーマンスの問題が発生する可能性があります。したがって、私の意見では、ページング アルゴリズムを適用する必要があります (LIMIT と OFFSET による)。ただし、まずブラウザ ボックス内でフィルタリングされたポイントをレンダリングし、次に他のすべてをレンダリングする必要があります。
UPD: このバリアントを見つけました:
SELECT gs.id, gs.name, ST_Contains(ST_GeomFromText('POLYGON(...)', 4326), gs.point) as contains
FROM geoms as gs
WHERE gs.name LIKE '%Berlin%'
ORDER BY contains DESC
LIMIT 50