MySQL查询统计条目大于某个值的记录
场景比如,有一个服务器记录的表(server_mst),表中记录了服务器的用途和使用人,如下所示:idserver_ipuseuser0172.16.0.2testjam1172.16.0.2devjak2172.16.0.3onlineboss3172.16....
·
场景
比如,有一个服务器记录的表(server_mst),表中记录了服务器的用途和使用人,如下所示:
id | server_ip | use | user |
---|---|---|---|
0 | 172.16.0.2 | test | jam |
1 | 172.16.0.2 | dev | jak |
2 | 172.16.0.3 | online | boss |
3 | 172.16.0.4 | online | boss |
从上表中可以看出,一台服务器可能用作多个用途,一个用途也可能需要多台服务器,所以我们常会需要进行某些统计,例如,统计复用的机器有哪些,或者占用服务器超过某个数量的功能用途是哪些。这些需求本质上来讲就是查询统计条目大于某个值的记录。
示例
在本例中,我们查询被复用的机器有哪些(所谓被复用,在本例中即为统计条目大于1的记录),以下为SQL查询语句:
SELECT * FROM server_mst WHERE server_ip IN (
SELECT server_ip FROM server_mst GROUP BY server_ip HAVING COUNT(server_ip) > 1
);
更多推荐
已为社区贡献1条内容
所有评论(0)