看板 Database 關於我們 聯絡資訊
資料庫名稱: Oracle 資料庫版本: 11gR2 內容/問題描述: 各位高手好 我有一個table有許多欄位 但只會用到 id(PK) 員工編號 狀態 重複值 四個欄位去讓一個view join PS:(重複值這個欄位是 該員工重複於該table幾次 僅有1筆為 0; 2筆則有 0,1 但現在業務單位只想要看到特定狀態下最新的(指 符合狀態下 重複值最高的) 查特定員工的SQL 是如下 select * from ( select id,員工編號,重複值,狀態碼 from table where 員工編號 = 'xxxxxxx' and ((重複值 > 0 and 狀態碼 in(一些狀態碼)) or 重複值 = '0') order by 重複值 desc ) where rownum = 1 可是拿掉 員工編號 = 'xxxxx' 要列出每個員工這個情況的資料 我不知道要從何下手.. 懇請賜關鍵字 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.120.255.187 ※ 文章網址: http://www.ptt.cc/bbs/Database/M.1419317019.A.EFF.html ※ 編輯: sabreur (59.120.255.187), 12/23/2014 15:26:39
sabreur: 嗯... 我用rank() + partition 去解決了 我該自刪嗎 冏 12/23 15:27
gun5566: 不用自刪阿,可以留著給後面的人看 12/24 09:26