看板 Database 關於我們 聯絡資訊
※ 引述《OTZ (......囧)》之銘言: : 資料表 tag_received : id , signal , time : c1 104 2008-08-06 17:48:29 : c2 105 2008-08-06 17:48:30 : c3 106 2008-08-06 17:48:30 : c1 107 2008-08-06 17:48:32 : c2 108 2008-08-06 17:48:33 : c3 208 2008-08-06 17:48:35 : c1 209 2008-08-06 17:48:38 : c2 210 2008-08-06 17:48:40 : c3 211 2008-08-06 17:48:42 : c1 212 2008-08-06 17:48:43 : 想要取c1,c2,c3最新的資料出來 : c1 212 2008-08-06 17:48:43 : c2 210 2008-08-06 17:48:40 : c3 211 2008-08-06 17:48:42 : 用的語法是 : SELECT id, signal, max(time)time FROM tag_received GROUP BY id; : 出來的時間是最新的沒錯, 但是 signal 卻是第一筆的數值 : c1 104 2008-08-06 17:48:43 << 時間是最新的 , 但是 signal 卻是最舊一筆 : c2 105 2008-08-06 17:48:40 : c3 106 2008-08-06 17:48:42 : 請問是用的語法錯誤 , 還是有什麼沒注意到的地方呢 ? 謝謝 select id,signal,time from tag_received t1 where time in (select max(time) from tag_received t2 where t1.id=t2.id) 這樣就行了^^ -- http://hasio.vgocities.net/blog/index.php 我的部落格 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.194.122