Re: count distinct and group by

From: Andomar <andomar(at)aule(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: count distinct and group by
Date: 2015-05-07 10:46:19
Message-ID: 554B427B.2070509@aule.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> And this doesn't:
>
> select count(distinct id) from bg order by id;
> ERROR: column "bg.id <http://bg.id>" must appear in the GROUP BY clause
> or be used in an aggregate function
> LINE 1: select count(distinct id) from bg order by id;
>

Your result set will contain one row with the count of distinct ids.
You can't really order 1 row.

The error message occurs because your result set has one unnamed column:
count(distinct id). You could write the query like:

select count(distinct id) as cnt from bg order by cnt;

That would be correct SQL, because the column "cnt" now does exist.

Kind regards,
Andomar

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Szymon Guz 2015-05-07 10:48:09 Re: count distinct and group by
Previous Message Geoff Winkless 2015-05-07 10:39:30 Re: count distinct and group by