如何查詢數(shù)據(jù)表中重復(fù)的數(shù)據(jù)?

字號:

在測試中,經(jīng)常會對程序中某一功能進行反復(fù)的測試,進而導(dǎo)致數(shù)據(jù)表中產(chǎn)生了除主鍵以外的重復(fù)數(shù)據(jù)。我們?nèi)绾握页鲞@些重復(fù)的數(shù)據(jù)呢?
    其實可以用很簡單SQL語句將其查詢出來。如果想查詢數(shù)據(jù)表中某一個字段重復(fù)(這里假設(shè)這個字段名是ID1),可以使用以下SQL語句。
    select Table1.* from Table1 right join (
    select ID1 From Table1 Group by ID1 having Count(ID1) > 1 ) T on Table1.id1 = T.id1
    如果想查詢數(shù)據(jù)表某兩個字段重復(fù),則可以使用如下語句查詢。
    select Table1.*
    from Table1 right join (
    select ID1, ID2 From Table1 Group by ID1, ID2 having Count(ID1) > 1 and Count(ID2) > 1 ) T
    on Table1.id1 = T.id1 and Table1.id2 = T.id2
    考試大提示: 上面代碼中出現(xiàn)的ID1和ID2字段均不是數(shù)據(jù)表主鍵。