查询以计算ip与不同帐户一起使用的次数

时间:2011-02-09 19:54:34

标签: mysql

我想要一个查询来计算有多少不同的客户帐户使用相同的IP登录。

+---------+-------------+------+-----+---------+----------------+
| Field   | Type        | Null | Key | Default | Extra          |
+---------+-------------+------+-----+---------+----------------+
| info_id | int(11)     | NO   | PRI | NULL    | auto_increment |
| afid    | int(11)     | NO   |     | 0       |                |
| access  | date        | NO   |     | NULL    |                |
| ip      | varchar(15) | NO   |     |         |                |
+---------+-------------+------+-----+---------+----------------+

afid是客户ID。每次登录时都会在此表中插入。我一直在试着没有任何运气的嵌套选择,以及我能想到的任何东西。我可能过分思考了这个问题:)

提前致谢!

1 个答案:

答案 0 :(得分:1)

试试这个:

SELECT COUNT(DISTINCT afid) AS afid_count
FROM yourtable
WHERE ip = '....'

获取最常用IP的列表:

SELECT
    ip,
    COUNT(DISTINCT afid) AS afid_count
FROM yourtable
GROUP BY ip
HAVING afid_count > 1
ORDER BY afid_count DESC