Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."?

Поиск
Список
Период
Сортировка
Искать
От
David Wilson
Тема
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."?
Дата
Msg-id
CA+6bknUsWO8idV5MAK_itZD23iUb7owD+E0fS0E5hUnm-zG+Ng@mail.gmail.com
Ответ на
Список
Дерево обсуждения
Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Stephen Frost <sfrost@snowman.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Pavel Stehule <pavel.stehule@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? David Wilson <david.t.wilson@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Mark Mielke <mark@mark.mielke.cc>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Tom Lane <tgl@sss.pgh.pa.us>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Mark Mielke <mark@mark.mielke.cc>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Christopher Browne <cbbrowne@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Andrew Dunstan <andrew@dunslane.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? "Ross J. Reedstrom" <reedstrm@rice.edu>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Brendan Jurd <direvus@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Pavel Stehule <pavel.stehule@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Christopher Browne <cbbrowne@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Marcin Mańk <marcin.mank@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Mark Mielke <mark@mark.mielke.cc>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Marti Raudsepp <marti@juffo.org>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Stephen Frost <sfrost@snowman.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Pavel Stehule <pavel.stehule@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Pavel Stehule <pavel.stehule@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Pavel Stehule <pavel.stehule@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Pavel Stehule <pavel.stehule@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Stephen Frost <sfrost@snowman.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Tom Lane <tgl@sss.pgh.pa.us>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? "Eric B. Ridge" <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Tom Lane <tgl@sss.pgh.pa.us>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? "Joshua D. Drake" <jd@commandprompt.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Jim Nasby <jim@nasby.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Robert Haas <robertmhaas@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? "David E. Wheeler" <david@kineticode.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? "Eric B. Ridge" <ebr@tcdi.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Tom Lane <tgl@sss.pgh.pa.us>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Tom Lane <tgl@sss.pgh.pa.us>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Andrew Dunstan <andrew@dunslane.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Darren Duncan <darren@darrenduncan.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Robert Haas <robertmhaas@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? "Eric B. Ridge" <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Valentine Gogichashvili <valgog@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Andrew Dunstan <andrew@dunslane.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Tom Lane <tgl@sss.pgh.pa.us>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Andrew Dunstan <andrew@dunslane.net>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Eric Ridge <eebbrr@gmail.com>
Re: Thoughts on "SELECT * EXCLUDING (...) FROM ..."? Merlin Moncure <mmoncure@gmail.com>
On Sun, Oct 30, 2011 at 1:10 AM, Darren Duncan  wrote:

> The SQL level is exactly the correct and proper place to do this.
>
> Its all about mathematical parity.  That is the primary reason to do it.
>
> - "SELECT *" gives you a whole set.
> - "SELECT foo, bar" gives you a subset of that.
> - "SELECT ALL BUT foo, bar" gives you the complementary subset.

That's not actually entirely true given the usual SQL (and
mathematical) meaning of "set". This feature relates to the set of
attributes returned regarding elements of the returned set, not the
set itself- the actual returned set is identical regardless of the
column-specifier formulation. Claiming this as an SQL mathematical
purity issue is a bit disingenuous, as SQL set manipulation takes
place at the member level rather than the attribute level- SQL is
otherwise quite explicit about requiring explicit listings of the
attributes that the client is interested in regarding a returned set
of member rows.

>
> Arguing against this is like arguing against a subtraction operator, because
> we can emulate using addition plus negation, or saying subtraction should
> just be a special filter in a client app.

That would be true if this was an argument against "WHERE" or
"EXCEPT". Column specification and row specification are very
different and cannot be conflated.

That's not to say this proposal is without merit, merely that your
arguments for it are poorly founded and not particularly relevant.

-- 
- David T. Wilson
david.t.wilson@gmail.com

В списке pgsql-hackers по дате отправления
От: Darren Duncan
Дата:
От: Kääriäinen Anssi
Дата:
Сообщение: Re: So, is COUNT(*) fast now?
FAQ