2012-02-03 2 views
0

mqysqlから最も近い座標を取得しようとしていますが、構文にエラーがあります!mysqlは座標エラーを選択します

$ lat = latitude; $ long =経度。

"SELECT * FROM `b_location` WHERE round(lat,3) LIKE $lat 
AND round(long,2) LIKE $long order by acos(cos(radians($lat))*cos(radians(lat))*cos(radians(long)- 
radians($long))+sin(radians($lat))*sin(radians(lat)) LIMIT 0,1" 

エラー:すべてのコメントは

答えて

1

SELECT * 
    FROM `b_location` 
WHERE round(lat,3) LIKE $lat 
    AND round(long,2) LIKE $long 
ORDER BY acos(cos(radians($lat)) * 
       cos(radians(lat)) * 
       cos(radians(long) - radians($long)) + 
       sin(radians($lat))*sin(radians(lat)) 
      ) LIMIT 0,1" 
+0

時にはその小さなことが重要です:) – arjun

0

あなたは閉じ括弧

を逃している式の最後の部分の後に括弧を閉じる欠落を歓迎している

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 0,1' at line 1 

0

* 使用この最も近接する距離< 25 *

SELECT ID、(3959の* ACOS(COS(ラジアン(37))* COS(ラジアン(LAT))* COS(ラジアン(LNG) - ラジアン(-122) )+ sin(ラジアン(37))* sin(ラジアン(lat))))AS距離FROMマーカ距離がある場合< 25距離順リミット0,20;

関連する問題