[SQL ] 找出最新的紀錄

看板Database作者 (Carl Siu)時間14年前 (2012/02/22 22:26), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/2 (看更多)
想了怎樣寫出一句 SQL 想了很久,想請各位幫幫忙。 假設這裡有兩個氣象中心,會不定期的報告當時的温度,儲在中央資料庫中: 中心|時間       |温度 A  |2012-02-22 12:33 |22 A  |2012-02-22 14:26 |23 B  |2012-02-22 13:22 |18 B  |2012-02-22 15:12 |20 問題是如何得知各中心最新的温度?即如下的資料: 中心|時間       |温度 A  |2012-02-22 14:26 |23 B  |2012-02-22 15:12 |20 我只會為每一個中心作一句 SQL query: select * from table where 中心="A" order by 時間 desc limit 1; select * from table where 中心="B" order by 時間 desc limit 1; 但這樣會很沒效率。有一句 SQL 便可做到的方法嗎?我用的是 MySQL。 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.77.150.153

02/22 22:35, , 1F
你想要的是 group by 功能嗎?
02/22 22:35, 1F

02/22 22:46, , 2F
group by + MAX
02/22 22:46, 2F

02/22 22:47, , 3F
用"select max(時間)...group by 中心;"只會給出首個温度
02/22 22:47, 3F

02/22 22:48, , 4F
having max(時間)?
02/22 22:48, 4F
文章代碼(AID): #1FHFimbd (Database)
文章代碼(AID): #1FHFimbd (Database)