我想要一个在数据库中搜索多个相同条目的mysql查询。
例如:
**Username Access_point Mac_address Authdate**
ALAIN AP01 00:00:00:00:00 2013-11-22 05:00:01
ALAIN AP01 00:00:00:00:00 2013-11-22 04:59:10
ALAIN AP02 00:00:00:00:00 2013-11-22 04:59:01
ALAIN AP01 00:00:00:00:00 2013-11-22 04:58:50
ALAIN AP03 00:00:00:00:00 2013-11-22 04:57:55
ALAIN AP01 00:00:00:00:00 2013-11-22 04:50:01
ALAIN AP02 00:00:00:00:00 2013-11-22 03:00:01我想要一个查询,列出我相同的行(除了授权日期),并返回它与用户名上的分组,看看有多少次阿兰连接到AP01上的最后一个小时。
我不知道你是否清楚?
我试过这样做:
SELECT COUNT(username), username, (access_point), access-point, (mac_address), mac_address
FROM table
HAVING COUNT(username) > 1
AND COUNT(access_point)> 1
AND COUNT(mac_address) > 1
GROUP BY username谢谢你的帮助。
发布于 2013-12-06 03:35:10
我不知道你的表名叫什么--在你的例子中,它只是叫做" table“,但我猜你在粘贴到SO时改变了这一点。
如果要统计过去一小时内所有接入点上所有用户的连接数,可以使用以下查询:
SELECT
COUNT(*) AS NumberOfConnections, Username, Access_Point
FROM
table
WHERE
Authdate > DATE_SUB(Authdate, INTERVAL 1 HOUR)
GROUP BY
Username, Access_Point;如果你只需要AP01上阿兰的数据,那么它将是这样的:
SELECT
COUNT(*) AS NumberOfConnections, Username, Access_Point
FROM
table
WHERE
Authdate > DATE_SUB(Authdate, INTERVAL 1 HOUR)
AND
Username = 'ALAIN'
AND
Access_Point = 'AP01'
GROUP BY
Username, Access_Point;https://stackoverflow.com/questions/20331632
复制相似问题