Re: Proposal for documenting 8.2 VALUES syntax

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-docs(at)postgreSQL(dot)org, Joe Conway <mail(at)joeconway(dot)com>
Subject: Re: Proposal for documenting 8.2 VALUES syntax
Date: 2006-09-15 21:20:53
Message-ID: 20060915212052.GB17919@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs

Tom Lane wrote:
> I spent a bit of time thinking about the best way to document 8.2's more
> powerful VALUES clause. Here's the plan I came up with:
>
> * There needs to be some introductory material in Part II, and the only
> place it seems to fit at all is under Chapter 7, Queries. I think there
> should be a new <sect1> page covering VALUES. We could add it at the
> end of the chapter (ie, a new section 7.7) or we could insert it between
> sections 7.3 Select Lists and 7.4 Combining Queries. The argument for
> the latter position is that VALUES is now syntactically parallel to
> SELECT, and so you can use it as if it were SELECT in UNION/INTERSECT/
> EXCEPT structures as described in 7.4, as well as attach the ORDER BY,
> LIMIT, OFFSET clauses described in 7.5 and 7.6. However that might be
> putting too much emphasis on syntactic form as opposed to pedagogical
> clarity. I'm a bit inclined to put it at the end of the chapter and
> then explain "by the way, you can also attach that other stuff to it".
> Thoughts?

I agree with putting it at the end of the chapter.

> * The SELECT reference page is huge already, so I would rather add only
> the minimum possible amount to it. This leads to the conclusion that
> we'd better create a new ref/ entry just for VALUES. I think that's
> appropriate anyway, since there is some material that doesn't seem like
> it would fit anywhere else --- in particular, that we want to warn off
> people from expecting umpteen-billion-row VALUES constructs to work
> well.

I agree here as well. One likely useful example, if not already
covered, is

select ... FROM ... WHERE op ANY (VALUES ( ... ))

I tripped over it a couple of days ago and it seems useful and non
obvious. ISTM it beats the current practice of

op ANY(ARRAY[ ... ])

which seems a bit of a kludge.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-docs by date

  From Date Subject
Next Message Tom Lane 2006-09-15 21:49:38 Re: Proposal for documenting 8.2 VALUES syntax
Previous Message Tom Lane 2006-09-15 21:14:51 Proposal for documenting 8.2 VALUES syntax