首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在数据库中搜索多个相同的条目

在数据库中搜索多个相同的条目
EN

Stack Overflow用户
提问于 2013-12-02 23:17:26
回答 1查看 94关注 0票数 1

我想要一个在数据库中搜索多个相同条目的mysql查询。

例如:

代码语言:javascript
复制
**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上的最后一个小时。

我不知道你是否清楚?

我试过这样做:

代码语言:javascript
复制
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

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2013-12-06 03:35:10

我不知道你的表名叫什么--在你的例子中,它只是叫做" table“,但我猜你在粘贴到SO时改变了这一点。

如果要统计过去一小时内所有接入点上所有用户的连接数,可以使用以下查询:

代码语言:javascript
复制
SELECT 
    COUNT(*) AS NumberOfConnections, Username, Access_Point
FROM
    table
WHERE
    Authdate > DATE_SUB(Authdate, INTERVAL 1 HOUR)
GROUP BY
    Username, Access_Point;

如果你只需要AP01上阿兰的数据,那么它将是这样的:

代码语言:javascript
复制
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;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20331632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档