看板 PHP 關於我們 聯絡資訊
請問一個關於mysql的問題 假設我的table資料如下 我希望輸出的資料如下 time serial time serial 10 1 10 3 10 2 20 null 10 3 30 null 20 null 40 1 30 null 50 1 40 1 60 2 50 1 70 3 60 1 80 0 60 2 70 1 70 2 70 3 80 0 也就是我需要取相同time當中,找最大serial值的資料輸出 同時若serial為null 或0 也要輸出 我想SQL應該有語法可以達成 可是我今天一直試不出來 麻煩各位指教,感恩 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.161.32.103
kosjason:先 order by serial (大到小) 在 group by time 12/11 23:14
kosjason:打錯= = 12/11 23:20
kerash:ref樓上: group by time order by time serial desc 12/12 01:57
kerash:誒 測出來不對=.=" 12/12 01:58
kerash:select time, max(serial) from xx group by time 12/12 02:04
kerash:http://imgur.com/2gio65k , ps max 要自己用 as 做別名 12/12 02:06
pttzoo:XX先謝謝k大熱心回覆,今天來試試 12/12 08:48
gmoz:ker大正解 但是要小心 若三個欄位以上會有錯誤 12/12 15:52
gmoz:最大的serial跟撈到的time不一定對得起來 12/12 15:52
gmoz: ^^^ 更正 其他欄位 12/12 15:53
kosjason:null 比 number大 這點原PO要確定一下 結果是不是你要的 12/12 16:21
kerash:yes 以上都有人提示了, 只是都是 int 的東西還是 0 會好些 12/12 20:09