github_log 這個得到的資料裡實際上有一些重複的資料,這些行所有的字段都一樣,但是created_at 卻差個幾秒鐘,導致出現資料重複。
查表:
set odps.sql.validate.orderby.limit=false;
select
actor_id,
repo_id,
created_at,
push_id,
push_size,
push_ref,
push_head,
push_before
from ods_github_log_m
where pt='20200301' and push_id in
( select
push_id
from ods_github_log_m
where type='pushevent' and pt='20200301'
group by
actor_id,
repo_id,
push_id
h**ing count(*) > 1
order by push_id
)order by push_id
;
按道理,乙個push_id 決定了一次push,因此不會乙個push_id 對應出現多個push記錄,但是實際查表發現。。。
再一次感嘆,日誌資料就是不靠譜啊啊!
篩選重複資料
沒有主鍵,有大量重複資料,並且兩張表之間也可能有重複資料。先要求 匯出資料不能重複,身份證號碼相同的按警告級別高的匯出,身份證號碼相同的按警告級別也相同的則按修改時間最新的匯出。大致有這麼幾個方案 1。直接寫sql語句把要用的資料篩選出來。2。新建乙個臨時表,先將兩張表的資料放入臨時表,然後篩選。3...
刪除重複資料
介紹兩種刪除重複行的方式 1.使用臨時表,分組找出重複部分的id進行刪除 刪除table goods info 中存在重複goods id的記錄 select identity int,1,1 as autoid,into temptable from goods info select min a...
剔除重複資料
明明想在學校中請一些同學一起做一項問卷調查,為了實驗的客觀性,他先用計算機生成了n個1到1000之間的隨機整數 n 1000 對於其中重複的數字,只保留乙個,把其餘相同的數去掉,不同的數對應著不同的學生的學號。然後再把這些數從小到大排序,按照排好的順序去找同學做調查。請你協助明明完成 去重 與 排序...