[英]MySQL Complex Query (group by)
以下是我的查询:
SELECT date, eventype, count(*) AS count
FROM vpnhistory WHERE partnername REGEXP 'CESAR'
GROUP BY (UNIX_TIMESTAMP(date)) DIV 600;
我得到了什么:
+---------------------+--------------+---------+
| date | eventype | counter |
+---------------------+--------------+---------+
| 2016-09-30 12:42:41 | blocked | 4 |
| 2016-10-03 10:55:55 | blocked | 1 |
| 2016-10-03 13:43:01 | blocked | 1 |
| 2016-10-04 15:17:19 | blocked | 2 |
| 2016-10-04 15:21:03 | blocked | 3 |
这是CESAR合作伙伴名称收到的总事件类型。
我的SELECT * FROM vpnhistory
是:
+----------------------+---------------------+--------------+-------------+
| vpnname | date | eventype | partnername |
+----------------------+---------------------+--------------+-------------+
| treinamento-12345678 | 2016-09-30 12:42:41 | blocked | CESAR |
| treinamento-45263748 | 2016-09-30 12:43:53 | unlock | CESAR |
| treinamento-92837465 | 2016-09-30 12:46:50 | unlock | CESAR |
| treinamento-92837465 | 2016-09-30 12:46:50 | unlock | CESAR |
| treinamento-92837465 | 2016-09-30 12:46:50 | unlock | CESAR |
+----------------------+---------------------+--------------+-------------+
我需要的例子如下:
How many eventype treinamento-92837465 exists? (inside partnername CESAR)
How many eventype treinamento-12345678 exists? (inside partnername CESAR)
SELECT date, eventtype, count(*)
FROM vpnhistory WHERE partnername REGEXP 'CESAR'
GROUP BY date, eventtype
那是你要的吗? 我不明白你的第一个分组条款。
您需要将用于分组的字段添加到SELECT:
SELECT
date,
eventype,
count(*) AS count,
(UNIX_TIMESTAMP(date)) DIV 600 AS group_field
FROM vpnhistory
WHERE partnername REGEXP 'CESAR'
GROUP BY group_field;
我得到了解决方案:
SELECT vpnname, date, eventype, count(*) AS counter
FROM vpnhistory
WHERE partnername REGEXP 'CESAR'
GROUP BY (vpnname), (eventype), ((UNIX_TIMESTAMP(date)) DIV 600);
+--------------------------------------------+---------------------+--------------+---------+
| vpnname | date | eventype | counter |
+--------------------------------------------+---------------------+--------------+---------+
| vpn-1234 | 2016-12-02 08:36:53 | blocked | 1 |
| vpn-1234 | 2016-12-02 08:36:49 | unlocked | 1 |
| vpn-1823781289371289378192983 | 2016-10-13 16:20:40 | blocked | 1 |
| vpn-2983494879234789327233 | 2016-10-19 09:27:13 | blocked | 1 |
| vpn-2983494879234789327233 | 2016-10-19 11:56:14 | unblocked | 1 |
| vpn-9123898293383838 | 2016-10-03 10:55:55 | blocked | 1 |
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.