2015-06-09 95 views
1

是否有可能检查重复值的表,如果是的话会返回结果? 假设我们有如下表:MYSQL选择重复值

table: views 
------------------ 
id | user | book | 
------------------ 
1 | 1 | b01 | 
2 | 1 | b02 | 
3 | 2 | b04 | 
4 | 2 | b09 | 
5 | 2 | b09 | 
6 | 2 | b09 | 
7 | 2 | b09 | 
8 | 3 | b03 | 
9 | 3 | b06 | 
10 | 3 | b07 | 
... 

所以......

What I want to print is this part: 
------------------ 
id | user | book | 
------------------ 
4 | 2 | b09 | 
5 | 2 | b09 | 
6 | 2 | b09 | 
7 | 2 | b09 | 

在平原的话,我们会说,用户2具有repeadet读书没有:B09 4次

可以这样做吗? 预先感谢您。

回答

4

使用GROUP BY得到你想要的东西:

SELECT user, book, COUNT(*) as cnt FROM views GROUP BY user, book HAVING cnt > 1