count_distinct
An alternative to COUNT(DISTINCT …) aggregate, usable with HashAggregate
Overview
| 4630 | count_distinct | count_distinct | 3.0.2 | FUNC  | BSD 2-Clause  | C  | 
Attributes
| Yes | No | Yes | No | Yes | Yes | No | - | 
Packages
| EL | PIGSTY  | count_distinct_$v* | 3.0.2 | - | 18 17 16 15 14 13  | 
| Debian | PIGSTY  | postgresql-$v-count-distinct | 3.0.2 | - | 18 17 16 15 14 13  | 
See Also
Comments
no pg14,13,12 on el8/9 pgdg
Availability
| PG18 | PG17 | PG16 | PG15 | PG14 | PG13 | |
|---|---|---|---|---|---|---|
el8.x86_64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
el8.aarch64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
el9.x86_64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
el9.aarch64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
d12.x86_64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
d12.aarch64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
u22.x86_64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
u22.aarch64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
u24.x86_64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
u24.aarch64 | ✗  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 3.0.2  | 
CONTRIB
PGDG
PIGSTY
Download
To add the required PGDG / PIGSTY upstream repository, use:
pig repo add pgdg -u    # add PGDG repo and update cache (leave existing repos)
pig repo add pigsty -u  # add PIGSTY repo and update cache (leave existing repos)
pig repo add pgsql -u   # add PGDG + Pigsty repo and update cache (leave existing repos)
pig repo set all -u     # set repo to all = NODE + PGSQL + INFRA  (remove existing repos)./node.yml -t node_repo -e node_repo_modules=node,pgsql # -l <cluster>Or download the latest packages directly:
Install
Install this extension with:
pig ext install count_distinct; # install by extension name, for the current active PG version
pig ext install count_distinct -v 18;   # install for PG 18
pig ext install count_distinct -v 17;   # install for PG 17
pig ext install count_distinct -v 16;   # install for PG 16
pig ext install count_distinct -v 15;   # install for PG 15
pig ext install count_distinct -v 14;   # install for PG 14
pig ext install count_distinct -v 13;   # install for PG 13dnf install count_distinct_18*;
dnf install count_distinct_17*;
dnf install count_distinct_16*;
dnf install count_distinct_15*;
dnf install count_distinct_14*;
dnf install count_distinct_13*;apt install postgresql-18-count-distinct;
apt install postgresql-17-count-distinct;
apt install postgresql-16-count-distinct;
apt install postgresql-15-count-distinct;
apt install postgresql-14-count-distinct;
apt install postgresql-13-count-distinct;./pgsql.yml -t pg_ext -e '{"pg_extensions": ["count_distinct"]}' # -l <cls>Create this extension with:
CREATE EXTENSION count_distinct;