如題,SQL查詢和刪除重復(fù)值,例子是在Oracle環(huán)境下,類似寫法網(wǎng)上很多。
1、利用distinct關(guān)鍵字去重
2、利用group by分組去重(這里沒有實驗出來就不寫了)
3、利用rowid查詢?nèi)ブ兀▊€人推薦這個,rowid查詢速度是最快的)
先一張測試表(USERS),里面有很多重復(fù)數(shù)據(jù)
方法一:distinct關(guān)鍵字
/*對username字段去重*/ select distinct username from users;
/*根據(jù)字段去重,但是多個字段時候只能去全字段重復(fù)的數(shù)據(jù)*/ select distinct username,password from users;
方法二:用rowid方法進(jìn)行全字段重復(fù)查詢,也可以按字段查詢重復(fù)值
注:先查詢出最后一條的全字段重復(fù)值,在用rowid找出其他剩余的重復(fù)值
select * from users u01 where rowid!= ( select max(rowid) from users u02 where u01.username=u02.username and u01.password=u02.password and u01.age=u02.age and u01.sex=u02.sex )
刪除重復(fù)數(shù)據(jù)(這里刪除的是全字段重復(fù)的數(shù)據(jù),根據(jù)不同情況where后面條件適當(dāng)修改)
delete from users u01 where rowid!= ( select max(rowid) from users u02 where u01.username=u02.username and u01.password=u02.password and u01.age=u02.age and u01.sex=u02.sex )
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/67771.html
摘要:數(shù)據(jù)庫學(xué)習(xí)線路圖語法教程教程簡介語法選擇查詢子句與,或,非按關(guān)鍵字排序在表中插入空值更新刪除運(yùn)算符通配符運(yùn)算符運(yùn)算符通用數(shù)據(jù)類型語句快速參考連接內(nèi)部連接左連接右連接完整外部連接自連接運(yùn)算符語句語句撤銷索引表以及數(shù)據(jù)庫語句語句語句字 數(shù)據(jù)庫學(xué)習(xí)線路圖 SQL 語法教程 SQL 教程 SQL 簡介 SQL 語法 SQL Select選擇 SQL SELECT DISTINCT S...
閱讀 1361·2021-11-24 09:39
閱讀 1354·2021-11-04 16:12
閱讀 2697·2021-09-24 09:47
閱讀 3343·2021-09-01 10:50
閱讀 1482·2019-08-30 15:55
閱讀 1429·2019-08-30 15:43
閱讀 650·2019-08-30 11:08
閱讀 3587·2019-08-23 18:33