Aggregate and hash aggregate
In this recipe, we will be discussing aggregate and hash aggregate mechanisms in PostgreSQL.
Getting ready
Aggregate is a node type that only evaluates the aggregate operators. Some of the aggregate operators are SUM, MIN, MAX, and so on.
Hash aggregate is a node type that requires an aggregate operator, and a group key column. In general, we see this node type being utilized during the GROUP BY, DISTINCT, or set operations.
How to do it…
Aggregate
To demonstrate the aggregates behavior, let's query the
benchmarsqlas follows:benchmarksql=# EXPLAIN SELECT max(i_price) FROM bmsql_item; QUERY PLAN ------------------------------------------------------------------------ Aggregate (cost=2549.00..2549.01 rows=1 width=6) -> Seq Scan on bmsql_item (cost=0.00..2299.00 rows=100000 width=6) (2 rows)
From the preceding plan, as expected we got the aggregate node type, which is followed by...