Re: [SQL ] 有關 group by 和 order by 語法

看板Database作者時間16年前 (2010/01/27 16:42), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《tabear (胖熊)》之銘言: : 我用的是 MySQL table: info : id mb data : ------------------------ : 1 1 0101 : 2 25 0402 : 2 17 0402 : 2 28 0101 : select id,mb,data from info group by id order by data,mb : 出來的結果是 我心裡想的應該是 : id mb data id mb data : ------------------------ ----------------------- : 1 1 0101 1 1 0101 : 2 25 0402 2 28 0101 : 請問要怎樣 sql 可以達到我要的結果哩 ? Use: MSSQL 2005 or 2008 皆可 (不知道以下語法使用部份和 MYSQL 是否有不同) SELECT info.id, info.mb, info.data FROM info LEFT OUTER JOIN (SELECT id, MAX(data) max_Data FROM info GROUP BY id) TmpTable /*先抓出目前要的資料當索引 (因為 GROUP BY 的 SELECT 內只能放彙總函數)*/ ON info.id=TmpTable.id AND info.mb=TmpTable.mb /*利用抓取出之資料與原資料合併*/ WHERE TmpTable.id IS NOT NULL /*把 NULL 不符合資料剔除*/ ORDER BY TmpTable.id, Tmptable.mb -- 完成~! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.75.95
文章代碼(AID): #1BN_o5bN (Database)
文章代碼(AID): #1BN_o5bN (Database)