<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Calvin's Tech Space

    成于堅忍,毀于浮躁

       :: 首頁 :: 聯系 :: 聚合  :: 管理

    如何用一條sql語句刪除表中所相同的記錄

    刪除重復數據

    一、具有主鍵的情況
    a.具有唯一性的字段 id(為唯一主鍵)
    delete table
    where id not in
    (
    select max(id) from table group by col1,col2,col3...
    )
    group by 子句后跟的字段就是你用來判斷重復的條件,如只有col1,
    那么只要col1字段內容相同即表示記錄相同。

    b.具有聯合主鍵
    假設col1+','+col2+','...col5 為聯合主鍵
    select * from table where col1+','+col2+','...col5 in (
    select max(col1+','+col2+','...col5) from table
    where having count(*)>1
    group by col1,col2,col3,col4
    )
    group by 子句后跟的字段就是你用來判斷重復的條件,
    如只有col1, 那么只要col1字段內容相同即表示記錄相同。

    c:判斷所有的字段
    select * into #aa from table group by id1,id2,....
    delete table
    insert into table
    select * from #aa

    二、沒有主鍵的情況

    a:用臨時表實現
    select identity(int,1,1) as id,* into #temp from ta
    delect #temp
    where id not in
    (
    select max(id) from # group by col1,col2,col3...
    )
    delete table ta
    inset into ta(...)
    select ..... from #temp

    b: 用改變表結構(加一個唯一字段)來實現
    alter table 表 add newfield int identity(1,1)
    delete 表
    where newfield not in
    (
    select min(newfield) from 表 group by 除newfield外的所有字段
    )

    alter table 表 drop column newfield
     ————————————————————————————————————————————
    在數據庫里表的rowid是唯一的所以相同的記錄rowid是不同的可以分兩步做因 為
    一:查重復記錄
    select rowid,bm,mc from 表名1 where 表1.rowid!=(select max(rowid) from
    表1 b(別名) where 表1.bm=b.bm and 表.mc=b.mc);
    二:刪除重復 記錄
    delete from 表1 where 表1.rowid!=(select max(rowid) from 表1.b where 表1.bm=b.bm and 表1.mc=b.mc);
    這段SQL的功能是查找重復的記錄,然后保留rowid號最大的那條記錄 將其余的相同記錄刪除。
    posted on 2010-03-23 22:47 calvin 閱讀(1574) 評論(0)  編輯  收藏 所屬分類: Oracle
    主站蜘蛛池模板: 亚洲国产成人久久精品大牛影视| 亚洲国产精品不卡毛片a在线| 亚欧免费一级毛片| 毛片免费在线观看| 成人午夜免费福利视频| 日韩a级毛片免费视频| 亚洲精品美女久久久久99小说| 亚洲AV无码乱码国产麻豆 | 国产精品亚洲专一区二区三区| 成人a毛片视频免费看| 毛片无码免费无码播放| 国产美女无遮挡免费网站| 亚洲AV无码专区电影在线观看 | 日韩精品极品视频在线观看免费| 亚洲av无码潮喷在线观看| 91青青青国产在观免费影视 | 久久国产成人亚洲精品影院| 亚洲精品中文字幕乱码影院| 狠狠热精品免费观看| 国产免费AV片在线播放唯爱网| 亚洲男人av香蕉爽爽爽爽| 男女一边桶一边摸一边脱视频免费 | 麻豆va在线精品免费播放| 国产精品亚洲美女久久久| 亚洲自偷自偷在线成人网站传媒| 日韩精品无码免费专区网站| 国产免费AV片无码永久免费 | 久久久久久亚洲av无码蜜芽 | 毛片在线免费视频| 亚洲国产精品无码AAA片| 精品久久久久亚洲| 国产亚洲精品va在线| 亚洲阿v天堂在线2017免费| 国产91在线免费| 成人免费777777被爆出| 亚洲av一本岛在线播放| 在线观看免费播放av片| 亚洲一级毛片免观看| AV在线播放日韩亚洲欧| 国产麻豆视频免费观看| h视频在线观看免费|