アプリケーションはどのように近接検索を実行しますか? たとえば、ユーザーが郵便番号を入力すると、アプリケーションは 20 マイル以内にあるすべてのビジネスを近さ順にリストします。
そのようなものを PHP と MySQL で構築したいと考えています。このアプローチは正しいですか?
- 興味のある場所の住所を取得し、データベースに保存する
- Google のジオコーディング サービスを使用してすべての住所をジオコーディングする
- 近接検索と順序付けを行うための Haversine 式を含むデータベース クエリを記述します。
これでよろしいですか?ステップ 3 では、すべてのクエリの近接度を計算します。すべてのビジネスといくつかの参照場所の間の距離をリストする PROXIMITY テーブルを用意したほうがよいでしょうか?