在SQL和Chartio中使用分组依据和汇总特定字符串

时间:2015-12-17 23:37:41

标签: sql

我在Chartio中应用过滤器,它允许您使用SQL创建过滤器查询。现在它将每个电子邮件提供商分开分组。我想要做的就是将Gmail和AOL分开,但将AcmeCo和RandCo汇总成一个"其他"。这样做的最佳方式是什么?

我当前的默认查询,用于创建过滤器标签。

SELECT `Email Stats`.`provider` AS `Provider`
FROM `EmailStats` AS `Email Stats`
GROUP BY `Email Stats`.`provider`

以下是我的EmailStats表的示例:

+------------+--------+----------------+  
| Date       | Clicks | Provider       |
+------------+--------+----------------+  
| 2015-12-13 |   10   |  Gmail         |
| 2015-12-13 |   2    |  AOL           |
| 2015-12-13 |   7    |  AcmeCo        |
| 2015-12-13 |   10   |  RandCo        |
| 2015-12-14 |   5    |  Gmail         |
| 2015-12-14 |   8    |  AOL           |
| 2015-12-14 |   12   |  AcmeCo        |
| 2015-12-14 |   18   |  RandCo        |
+------------+--------+----------------+

我是SQL的新手,所以我不知道还有什么对查找答案有帮助。如果您需要更多详细信息,请与我们联系。

1 个答案:

答案 0 :(得分:1)

试试这个:

SELECT `Email Stats`.`provider`
FROM `EmailStats` AS `Email Stats`
GROUP BY `Email Stats`.`provider`
CASE `Email Stats`.`provider`
 WHEN 'Gmail' THEN 'Gmail' 
 WHEN 'AOL' THEN 'AOL' 
 ELSE 'Other' 
END as `Provider`