0
我嘗試使用我附近的位置列表(與最近的第一個排序)執行MySQL查詢。我不知道該怎麼做。我發現這個有趣的帖子:http://funkjedi.com/technology/308-search-using-geolocation-data-in-mysql/使用mysql的地理位置搜索查詢
一切接縫清楚。但查詢不起作用。我做了如下SQL查詢:
SELECT *, ($distance_formula) AS distance FROM restaurants
WHERE (geolatitude BETWEEN $lat_b1 AND $lat_b2)
AND (geolongitude BETWEEN $lng_b1 AND $lng_b2)
HAVING distance < $radius ORDER BY distance ASC
我得到的錯誤是:
Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column '$distance_formula' in 'field list'
點,則$ distance_formula在腳本製作,而不是一個字段列表,這是對。但我應該怎麼做,MySQL知道這是執行,它不是一個領域?
如果您有任何其他幫助或其他解決方案(從綠色)我會很高興。最後,我需要一個cakephp的解決方案。
非常感謝
伊沃
它看起來像'$ distance_formula'變量沒有評估,顯示爲「$ distance_formula」,而不是在您的查詢的SQL公式(6371 * ACOS ...)。你可以發佈你查詢數據庫的位嗎? – chrki 2013-02-16 14:09:33
呵呵,我查詢我的數據庫是這樣的:return $ this-> query($ sql); 這就是它在cakephp中與其他查詢一起工作的方式。我認爲這個問題不像我查詢我的數據庫。 – FishWave 2013-02-16 15:21:38
剛剛刪除distance_formula前的$符號並運行它 – Vineet1982 2013-02-16 15:26:47