sql:在没有主键的表中按计数过滤

wkyowqbh  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(322)

在一张看起来像的table上:

name    |    posts    |  comments
---------------------------------------
user1     |  page1      |  90
user1     |  page2      |  50
user1     |  page3      |  40
user2     |  page2      |  55
user2     |  page4      |  45
.         |  .          |  .
.         |  .          |  .
.         |  .          |  .

例如,找到拥有2个以上帖子的用户的最佳方法是什么?
我通常是用主键分组,

(for example) SELECT * FROM table
              GROUP BY PrimaryKey
              HAVING COUNT(name) > 2

但在这种情况下不能这样做;;怎么继续?
提前谢谢!

93ze6v8z

93ze6v8z1#

你好像想要这个:

SELECT user_name
FROM table
GROUP BY user_name
HAVING COUNT(*) > 2;

你似乎误解了什么是主键。您的查询版本将不返回任何行。为什么不?主键是唯一的。没有重复项。你想要复制品吗 user_name ,所以这似乎是合适的查询。

相关问题