我有一個創建兩個別名文件,這樣的查詢:將函數應用於一個別名場
(CASE WHEN `venueID` > 0 THEN `venueLongitude` ELSE `specialLongitude` END) AS `longitude`
(CASE WHEN `venueID` > 0 THEN `venueLatitude` ELSE `specialLatitude` END) AS `latitude`
其確定在某個查詢要使用哪個經度和緯度(有無數JOIN的表中,但對於這個例子來說,唯一的連接是從Gigs
表執行NATURAL LEFT JOIN
到一個名爲Venues
表。
該位工作正常,返回地點座標我有興趣做一個距離計算,我然後可以通過。
距離場看起來是這樣的:
((ACOS(SIN($lat * PI()/180) * SIN(`latitude` * PI()/180) + COS($lat * PI()/180) * COS(`latitude` * PI()/180) * COS(($lon - `longitude`) * PI()/180)) * 180/PI()) * 60 * 1.1515)
但是當我運行查詢,我得到的錯誤Unknown column 'latitude' in 'field list'
。有誰知道我可以如何執行這樣的查找。
p.s.
雖然我知道我可以使用地理空間查詢,我想知道在這以後可用於進一步查詢的方式回答,即
SELECT *,(CASE WHEN `a` > 0 THEN `a` ELSE `b` END) AS `x`,(`x` MOD 3) AS `y` FROM `Foo`
媽的,希望的是簡單的答案,但是,唉,我也認爲這是一些管道夢。謝謝 – topherg 2013-03-13 14:15:06