我有兩個表Cities_no_iata此表有列(CountryID,iata_code,緯度,longtiute)如何最接近的數值更新
Cities_iata此表有列(CountryID,iata_code,緯度,longtiute)
第一個表包含沒有iata_code所以iata_code列中的所有行是空
第二個表包含有iata_code
城市所以我想複製最近的城市iata_code城市對還沒有iata_code城市,我認爲兩件事
1最接近(經度和緯度)兩市
2-同CountryID了兩個這樣做城市。
Update Cities_iata
JOIN Cities_no_iata USING (CountryID)
Where ABS(cities_iata.latitude)= ABS(Cities_no_iata.latitude)
AND ABS(cities_iata.longitude)= ABS(Cities_no_iata.longitude)
AND cities_iata.CountryID = Cities_no_iata.country_id
set( Cities_no_iata.iata_code =cities_iata.iata_code);
但不工作
你應該使用更復雜的公式來計算出最近的城市。查看http://sylnsr.blogspot.co.uk/2012/12/find-nearest-location-by-latitude-and.html。這就是你想要做的 – Lee
這段代碼我很好地選擇最接近的城市,但如何從表更新到另一個表 – user1673473