1

'places'を含むテーブルがあり、各場所には名前と緯度、経度の座標があります。座標の境界ボックス(緯度/経度の周囲長)が与えられた場合、そのボックス内の場所のみを取得する効率的な方法は何ですか?。これで、マップのすべてのコーナーの座標がわかりました。その長方形内のすべてのストアを取得したいと思います。

ここに画像の説明を入力してください

これをPHPとMySQLで実行したいと思います。クエリを使用しようとしていBETWEENますが、ストアが見つかりません。私のコードは次のとおりです。

$sql = "
    SELECT * from myTable
    WHERE lon BETWEEN '$west_lon' AND '$east_lon'
    AND lat BETWEEN '$south_lat' AND '$north_lat'
";
4

1 に答える 1

1

こんにちはついに私は私の問題を解決しました。クエリにばかげた間違いがありました。

$sql="SELECT * FROM `MyTable`  WHERE (longitude BETWEEN '$west_long' AND '$east_long') AND (lat BETWEEN '$north_lat' AND '$south_lat')";

誰かがより良い方法を見つけたら、ここに投稿してください。正しいかどうかわかりません。

于 2013-03-09T14:41:25.073 に答える