Amazon Redshift
数据库开发人员指南 (API Version 2012-12-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

GROUP BY 子句

GROUP BY 子句标识查询的分组列。必须在查询使用标准函数(例如,SUM、AVG 和 COUNT)计算聚合时声明分组列。

Copy
GROUP BY expression [, ...]

expression

列或表达式的列表必须匹配查询的选择列表中的非聚合表达式的列表。例如,考虑以下简单查询:

Copy
select listid, eventid, sum(pricepaid) as revenue, count(qtysold) as numtix from sales group by listid, eventid order by 3, 4, 2, 1 limit 5; listid | eventid | revenue | numtix --------+---------+---------+-------- 89397 | 47 | 20.00 | 1 106590 | 76 | 20.00 | 1 124683 | 393 | 20.00 | 1 103037 | 403 | 20.00 | 1 147685 | 429 | 20.00 | 1 (5 rows)

在此查询中,选择列表包含两个聚合表达式。第一个聚合表达式使用 SUM 函数,第二个聚合表达式使用 COUNT 函数。必须将其余两个列(LISTID 和 EVENTID)声明为分组列。

GROUP BY 子句中的表达式也可以使用序号来引用选择列表。例如,上一个示例的缩略形式如下:

Copy
select listid, eventid, sum(pricepaid) as revenue, count(qtysold) as numtix from sales group by 1,2 order by 3, 4, 2, 1 limit 5; listid | eventid | revenue | numtix --------+---------+---------+-------- 89397 | 47 | 20.00 | 1 106590 | 76 | 20.00 | 1 124683 | 393 | 20.00 | 1 103037 | 403 | 20.00 | 1 147685 | 429 | 20.00 | 1 (5 rows)

本页内容: