Re: [SQL ] Group by,max的問題
看板Database (資料庫)作者windknife18 (windknife18)時間17年前 (2009/02/02 17:25)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/2 (看更多)
我沒有 Oracle 9i 不過用 mysql 玩了一下,使用 subquery 的技巧,不知道合不合用囉
我設定欄位名稱為 a, b, c, d
select * from test
where (b,c,d) in (
select b,c,max(d)
from test
where (b,c) in (
select b,max(c) from test group by b
)
group by c);
答案如下, 至於有沒有更好的方法我就沒試囉
| a | b | c | d |
+------+------+------+------+
| 2222 | 1 | 1 | 2 |
| 5555 | 2 | 2 | 2 |
+------+------+------+------+
※ 引述《ultimateyes (CmLBat)》之銘言:
: 您好,小妹用Oracle 9i
: 我有一個table [version],
: 欄位有[版本編號],[項目編號],[母版本],[子版本]四個欄位
: 結果要依[項目編號]分組,找到每一組的[母版本]最大值,再找[子版本]的最大值,
: 顯示出[版本編號]
: 例如:
: [版本編號][項目編號][母版本][子版本]
: -------------------------------------
: [1111] [1] [1] [1]
: [2222] [1] [1] [2]
: [3333] [2] [1] [1]
: [4444] [2] [2] [1]
: [5555] [2] [2] [2]
: 最後要列出
: [2222]和[5555]
: 我用了group by,order by,rownum等都試過了...試不出我要的答案
: 想問問大家單純用SQL指令語法怎麼寫(不搭配像PHP,VB等程式碼)?
: 謝謝大家了!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.229.85.166
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Database 近期熱門文章
PTT數位生活區 即時熱門文章