sql輸出表中重復數據


數據:

1 1 2 3
2 2 2 3
3 1 2 3
4 2 2 3
5 2 1 3
6 1 1 3
7 3 2 1

 

表格查詢:

 

 SELECT * FROM `t1`;

 

可以看到,如果界定為 a、b、c 都相同即為重復數據,那么sql的目的就是取出這樣的數據。

。。。

按a分組,取數量:

SELECT a,COUNT(1) FROM `t1` GROUP BY a HAVING COUNT(1)>0;

看看出 a是1的有3條記錄...

 

。。。

 

SELECT id,a,b,c,COUNT(1) AS cnt from t1 GROUP BY a,b,c HAVING cnt>1;

 

可以看出 abc都相同的有兩類,每類有兩條,一個是 abc都為123,另一個是abc都為223

這樣就取出重復的數據,但是也只能取出重復的數據是 abc為123,和 abc為223,並不能一次取出重復的所有Id,如果要取出所有重復id還要繼續查詢 ,也就是遍歷上面的結果,每次都是根據 abc的值查詢就可以查詢出所有重復的記錄的id了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM