Обсуждение: UNION DISTINCT in doc

Поиск
Список
Период
Сортировка

UNION DISTINCT in doc

От
Hitoshi Harada
Дата:
I found PostgreSQL accepts UNION DISTINCT but documents don't mention it.

http://www.postgresql.org/docs/9.0/static/sql-select.html#SQL-UNION

select_statement UNION [ ALL ] select_statement

UNION DISTINCT is nothing more than UNION itself, but gram.y
definitely accept it and the SQL standard describes it as well. Should
we add DISTINCT to docs?

Regards,

-- 
Hitoshi Harada


Re: UNION DISTINCT in doc

От
Tom Lane
Дата:
Hitoshi Harada <umi.tanuki@gmail.com> writes:
> UNION DISTINCT is nothing more than UNION itself, but gram.y
> definitely accept it and the SQL standard describes it as well. Should
> we add DISTINCT to docs?

I think it'd be hard to describe without confusing people, because
while DISTINCT is a noise word there, it's definitely not a noise
word after SELECT.  And the way that the reference pages are laid
out, it's hard to connect different descriptions of the same
keyword to different usages.  If you can think of a non-forced
way of describing this, fine.  But I don't have a problem with
leaving it as an undocumented standards-compliance nit.
        regards, tom lane


Re: UNION DISTINCT in doc

От
Robert Haas
Дата:
On Thu, Oct 14, 2010 at 10:37 AM, Hitoshi Harada <umi.tanuki@gmail.com> wrote:
> I found PostgreSQL accepts UNION DISTINCT but documents don't mention it.
>
> http://www.postgresql.org/docs/9.0/static/sql-select.html#SQL-UNION
>
> select_statement UNION [ ALL ] select_statement
>
> UNION DISTINCT is nothing more than UNION itself, but gram.y
> definitely accept it and the SQL standard describes it as well. Should
> we add DISTINCT to docs?

+1, with due regard for the issue raised by Tom.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: UNION DISTINCT in doc

От
Hitoshi Harada
Дата:
2010/10/15 Tom Lane <tgl@sss.pgh.pa.us>:
> Hitoshi Harada <umi.tanuki@gmail.com> writes:
>> UNION DISTINCT is nothing more than UNION itself, but gram.y
>> definitely accept it and the SQL standard describes it as well. Should
>> we add DISTINCT to docs?
>
> I think it'd be hard to describe without confusing people, because
> while DISTINCT is a noise word there, it's definitely not a noise
> word after SELECT.  And the way that the reference pages are laid
> out, it's hard to connect different descriptions of the same
> keyword to different usages.  If you can think of a non-forced
> way of describing this, fine.  But I don't have a problem with
> leaving it as an undocumented standards-compliance nit.

I thought adding DISTINCT next to ALL is enough like

select_statement UNION [ ALL | DISTINCT ] select_statement

and say "UNION DISTINCT is identical to UNION only" or something. That
sounds not so confusing with DISTINCT clause description.

Regards,

--
Hitoshi Harada


Re: UNION DISTINCT in doc

От
Tom Lane
Дата:
Hitoshi Harada <umi.tanuki@gmail.com> writes:
> 2010/10/15 Tom Lane <tgl@sss.pgh.pa.us>:
>> I think it'd be hard to describe without confusing people, because
>> while DISTINCT is a noise word there, it's definitely not a noise
>> word after SELECT.

> I thought adding DISTINCT next to ALL is enough like

> select_statement UNION [ ALL | DISTINCT ] select_statement

> and say "UNION DISTINCT is identical to UNION only" or something. That
> sounds not so confusing with DISTINCT clause description.

I looked at this more closely and decided that we could probably avoid
confusion if the description of the "DISTINCT clause" was careful to say
SELECT DISTINCT and SELECT ALL, rather than just DISTINCT/ALL.
Committed that way.
        regards, tom lane