Oracle中按條件過濾重覆記錄

2021-12-30 05:18:47 字數 630 閱讀 4873

oracle中按條件過濾重覆記錄

在資料處理中,經常會遇到類似這樣的情況:資料庫中存在多條記錄,其中某些字段值相同,其他字段值不同.實際的業務需要針對這樣的情況,只保留一條資料,其他資料刪除.如何做到呢?在sql中有top關鍵字相對容易做到,但是在oracle中不支援top關鍵字,如果實現同樣的效果就會小費周折.具體實現方法如下舉例:

假如現在有表test,其中記錄

現在業務要求針對id,time相同的記錄只保留一條,即處理後得結果為

oracle語句為

select t1.*,rowid from test t1 where rowid in (select rowid from test t2 where t1.id=t2.id and t1.time=t2.time and rownum=1 );

或者對應的oracle語句:

select * from (select * from test order by id, rowid desc) t1 where rowid in (select rowid from (select * from test order by id, rowid desc) t2 where t1.id=t2.id and t1.time =t2.time and rownum=1 );

pandas按條件過濾 Pandas簡單入門

本文作為pandas入門及筆記用途!1.匯入pandas及資料表 import pandas as pd df pd.read csv uk rain 2014.csv header 0 2.更改列標籤及檢視前5行資料 3.查詢資料表行數及維度 df.shape 33,7 len df 4.檢視資料...

Python每日一記120 按條件篩選列表元素

關於條件列表中進行條件篩選元素,最近開始我們使用的方法是for迴圈,把滿足條件的裝進乙個列表,但是這樣不簡潔,且速度慢。那麼我們其實可以使用列表解析和filter函式 import pandas as pd import numpy as np import re import time from ...

oracle內部巢狀是過濾條件再篩選

select dd.2 from 3select ai.admininfo id as a,4 ri.roleinfo name as b,5 ai.del sign 6from admininfo ai 7left join roleinfo ri 8on ai.roleinfo id ri.ro...