示例:
a b c d
1 2 3 4
1 3 4 5
2 2 5 4
3 4 5 4
3 6 5 6
要獲取其中第一,三,四條,取出欄位a中的重複值
select * from
(select a,b,c,d,row_number() over (partition by a order by b desc,c asc) as sx from t
group by a,b,c,d
) swhere sx=1
row_number() over (partition by a order by b desc,c asc)中,partition by 為分組,以a分組,b降序,c公升序的格式排序後設定行數
排序後行數類似為 1 2 1 1 2........
判斷第一條或最後一條記錄
標籤具有以下一些屬性 var 迭代引數的名稱。在迭代體中可以使用的變數的名稱,用來表示每乙個迭代變數。型別為string。items 要進行迭代的集合。對於它所支援的型別將在下面進行講解。varstatus 迭代變數的名稱,用來表示迭代的狀態,可以訪問到迭代自身的資訊。begin 如果指定了item...
oracle去除重複, 取最新的第一條資料
解決思路 用oracle的row number over函式來解決該問題。解決過程 1.檢視表中的重覆記錄 2.標記重複的記錄 3.過濾重複資料,取得最新的記錄 row number over partition by col1 order by col2 表示根據col1分組,在分組內部根據 co...
oracle去除重複, 取最新的第一條資料
問題 在專案中有一張裝置檢測資訊表device info tbl,每個裝置每天都會產生一條檢測資訊,現在需要從該表中檢索出每個裝置的最新檢測資訊。也就是device id欄位不能重複,消除device id欄位重複的記錄,而且device id對應的檢測資訊test result是最新的。解決思路 ...