sql >> データベース >  >> RDS >> Mysql

Googleマップ、PHP、MySQLでの近距離検索

    では、始めましょう。以下のクエリを使用して、特定の半径(マイル)にある最寄りのバス停を取得します。クエリは、定義された半径内のすべてのポイントを返します。

    $lat = -31,52;
    $lon = -68,52;
    
    $multiplier = 112.12; // use 69.0467669 if you want miles
    $distance = 10; // kilometers or miles if 69.0467669
    
    $query = "SELECT *, (SQRT(POW((lat - $lat), 2) + POW((lng - $lng), 2)) * $multiplier) AS distance FROM routes WHERE POW((lat - $lat), 2) + POW((lng - $lng), 2) < POW(($distance / $multiplier), 2) ORDER BY distance ASC";
    

    結果...半径10マイルで最も近い...

    最も遠いが10マイル以内...

    ここで、destinationについても同じことを繰り返します。 、次にそのルートのバスをテーブルで検索します。このリンクも確認してください... http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html



    1. SQL Serverで依存関係を検索する:sql_expression_dependencies

    2. ネストされたCASTが機能しない

    3. PHPPDOフェッチnull

    4. 2つの別々のテーブルの列間で算術演算を行う関数を使用して1つのテーブルに列を追加するのに助けが必要