Re: [SQL ] 相同SN取時間最大的? 求救.....

看板Database (資料庫)作者 (可愛小孩子)時間7年前 (2017/04/17 23:22), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
-- 用黃色 group by -- 用天青色排名(遞減) -- 最後取第一名的 ;with tb1 as ( select *, row_number() over ( partition by Customer_num,Customer_SN order by Time desc ) as num from table where Customer_Name = 'A' ) select * from tb1 where num = 1 ※ 引述《necsa (necsa)》之銘言: : 各位好! : 這個問題我測試了很久, 並嘗試google大神. : 可是還是失敗..... : 希望有高手能給予解答. : 我的Table欄位共大概100欄, 大概如下: : Row_ID是流水號自動生成. : TableName=myTable : Row_ID, Customer_Name, Customer_num, Customer_SN, Time,.............., : 1 A 2 1 4/3 : 2 A 2 2 4/3 : 3 A 2 3 4/4 : 4 A 3 1 4/6 : 5 A 3 2 4/6 : 6 A 3 3 4/6 : 7 A 4 1 4/1 : 8 A 4 1 4/5 : 9 A 4 2 4/1 : 10 A 4 2 4/6 : 11 A 4 3 4/1 : 12 A 4 4 4/2 : 我需要以Customer_Name, 含Row_ID約100欄的所有欄位資料都要output出來. : 一開始我使用 : Select * from myTable where Customer_Name='A' : order by Custer_num ASC, Customer_SN ASC. : 可以得到我要的結果. : 結果在多筆測試後,發現輸出的資料Customer_SN有時候會重複 : (Row ID=7,8的Customer_SN都是1,Row ID=9,10的Customer_SN都是2) : 造成後續程式撰寫資料錯亂. : 請問要下什麼樣的SQL查詢, 當Customer_SN重複的時候只留下一筆Time比較大的資料? : 希望查詢結果如下: : Row_ID, Customer_Name, Customer_num, Customer_SN, Time,.............., : 1 A 2 1 4/3 : 2 A 2 2 4/3 : 3 A 2 3 4/4 : 4 A 3 1 4/6 : 5 A 3 2 4/6 : 6 A 3 3 4/6 : 8 A 4 1 4/5 : 10 A 4 2 4/6 : 11 A 4 3 4/1 : 12 A 4 4 4/2 : 懇請不吝賜教. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.83.104.117 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1492442533.A.F1F.html

04/18 00:35, , 1F
謝謝kid兄的指點
04/18 00:35, 1F
文章代碼(AID): #1OzDsbyV (Database)
討論串 (同標題文章)
文章代碼(AID): #1OzDsbyV (Database)