私はとても混乱していて、上記のトリックを見つけるためにゴーグルするのにとても疲れています。実際、私は6つのフィールドid、Sratlatitude、Startlongitude、EndLatitude、EndLongitude、およびusernameを持つデータベーステーブルを持っています。今、私は次のようなデータベースでクエリを実行したい
SELECT * FROM LOCATIONS(テーブル名)開始点(InputedStartlatitudeとInputedStartlongitude)と終了点(InputedEndlatitudeとInputedEndlongitude)の間のユーザー。例:USERXXX入力開始点(InputedStartlatitude=18.9647およびInputedStartlongitude=72.8258)=ムンバイおよび終了点(InputedEndlatitude=18.9647およびInputedEndlongitude=72.8258)=デリー。ここで、彼はInutedlatitudesとInputedlongitudesを使用して、この入力ルート(運転方向)間のユーザー数を検索したいと考えています。検索クエリはmysqlデータベースに対して起動し、ムンバイからデリーまでの間に保存されている開始および終了の緯度と経度から比較します。
私はこれに対する1つの解決策を見つけました:データベースにクエリを作成するようなもの:
SELECT * FROM lOCATIONS(tablename) WHERE (InputStartLatitude >= StartLatitude and IntartLongitude >= StartLong) and (InputEndLatitude <= EndLatitude and InuteEndLongitude <= EndLongitude);
しかし、私は上記のクエリでいくつかの問題に直面しました。以下はいくつかの場所の座標です。ご覧ください:
開始座標と終了座標は赤色で表示されます。開始位置は:ポルバンダル、終了位置は:ムンバイです。問題は、ポルバンダルからムンバイまでの都市を検索しようとすると、すべての都市が実際に運転方向にあるわけではないということです。私はクエリでこれらの都市のみを呼び出しましたが、Lat and Longを開始するよりも大きく、LatandLongを終了するよりも小さいです。しかし、ここではムンバイの緯度と経度はすべての都市よりもほとんどありません。では、どうすれば適切な検索クエリを作成できますか?
私が上記の状況を十分に説明したことを願っています。
どんな返答も私にとって非常に役に立ちます。
私はバックエンドとしてphp-mysqlを使用し、クライアント側でandroidを使用しています。