的。如果我有一個包含加油站指定城市的名稱和每個加油站的緯度+經度表:SQLite的:獲取一個代表實體對每個組的實體
city | name | latitude | longitude
---------------------------------------------------------
Berlin | GasPump1 | 52.5 | 13.5
Berlin | GasPump2 | 52.52 | 13.51
Zagreb | INA1 | 45.8 | 16
Zagreb | INA2 | 45.81 | 16.01
Zagreb | INA3 | 45.82 | 15.99
我怎麼會去使用單個SQL查詢爲每個城市獲取單個代表性實體?也就是說,我將如何去使用單個查詢執行以下僞代碼:
representativeStationsArray = []
citiesArray = sqlQuery("SELECT DISTINCT city FROM gasstations")
for city in citiesArray:
representativeStation = sqlQuery(
"SELECT * FROM gasstations WHERE city = ? LIMIT 1;",
city)
representativeStationsArray.append(representativeStation)
我已經接受了答案,但我想這可能是有趣的解釋爲未來的讀者我的需求。
在iOS上,一旦用戶縮小,在地圖視圖上顯示的註釋太多會降低應用的速度。我嘗試的第一個實驗性解決方案(對於我正在開發的國家/地區應該沒問題)是按城市過濾註釋,併爲每個城市顯示一個隨機註釋。
如果這證明不令人滿意,我會尋找另一種解決方案。
什麼是「代表」行?你只是想要任意排? – 2012-03-19 17:07:35
目前還不清楚你想要什麼。根據你的代碼,看起來你需要一個包含每個城市任何一個加油站的清單。 – mikerobi 2012-03-19 17:11:42
這是正確的 - 任何任意行。 – 2012-03-19 17:19:08