Re: [patch] Proposal for \crosstabview in psql
От
Daniel Verite
Тема
Re: [patch] Proposal for \crosstabview in psql
Дата
Msg-id
3d513263-104b-41e3-b1c7-4ad4bd99c491@mm
Ответ на
Re: [patch] Proposal for \crosstabview in psql (Daniel Verite)
Список
Дерево обсуждения
[patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql David Fetter <david@fetter.org>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Greg Stark <stark@mit.edu>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "David G. Johnston" <david.g.johnston@gmail.com>
Re: [patch] Proposal for \rotate in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \rotate in psql "David G. Johnston" <david.g.johnston@gmail.com>
Re: [patch] Proposal for \rotate in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Joe Conway <mail@joeconway.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql David Fetter <david@fetter.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Craig Ringer <craig@2ndquadrant.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Joe Conway <mail@joeconway.com>
Re: [patch] Proposal for \rotate in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Joe Conway <mail@joeconway.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Michael Paquier <michael.paquier@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Teodor Sigaev <teodor@sigaev.ru>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Jim Nasby <Jim.Nasby@BlueTreble.com>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Dean Rasheed <dean.a.rasheed@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Tom Lane <tgl@sss.pgh.pa.us>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Andres Freund <andres@anarazel.de>
Re: [patch] Proposal for \crosstabview in psql Dean Rasheed <dean.a.rasheed@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Jim Nasby <Jim.Nasby@BlueTreble.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Dean Rasheed <dean.a.rasheed@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Jim Nasby <Jim.Nasby@BlueTreble.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Dean Rasheed <dean.a.rasheed@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
[patch] \crosstabview documentation Christoph Berg <myon@debian.org>
Re: [patch] \crosstabview documentation Christoph Berg <myon@debian.org>
Re: [patch] \crosstabview documentation Tom Lane <tgl@sss.pgh.pa.us>
Re: [patch] \crosstabview documentation Christoph Berg <myon@debian.org>
Re: [patch] \crosstabview documentation Tom Lane <tgl@sss.pgh.pa.us>
Re: [patch] \crosstabview documentation "David G. Johnston" <david.g.johnston@gmail.com>
Re: [patch] \crosstabview documentation Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] \crosstabview documentation "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql "David G. Johnston" <david.g.johnston@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Jim Nasby <Jim.Nasby@BlueTreble.com>
Re: [patch] Proposal for \crosstabview in psql Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Dean Rasheed <dean.a.rasheed@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Peter Eisentraut <peter_e@gmx.net>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \crosstabview in psql Dean Rasheed <dean.a.rasheed@gmail.com>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \crosstabview in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql "Daniel Verite" <daniel@manitou-mail.org>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Marcin Mańk <marcin@maniek.info>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Re: [patch] Proposal for \rotate in psql Robert Haas <robertmhaas@gmail.com>
Re: [patch] Proposal for \rotate in psql Pavel Stehule <pavel.stehule@gmail.com>
Daniel Verite wrote:
> > > ORDER BY name
> > > \crosstabview cols = (select to_char(d, 'Mon') from
> > > generate_series('2000-01-01'::date, '2000-12-01', '1 month') d)
> >
> > My concern with that is that often you don't know what the columns will
> > be, because you don't know what exact data the query will produce. So to
> > use this syntax you'd have to re-create a huge chunk of the original
> > query. :(
>
> Also, if that additional query refers to tables, it should be executed
> with the same data visibility as the main query. Doesn't that mean
> that both queries should happen within the same repeatable
> read transaction?
>
> Another impractical aspect of this approach is that a
> meta-command invocation in psql must fit on a single line, so
> queries containing newlines are not acceptable as argument.
> This problem exists with "\copy (select...) to ..." already.
Thinking more about that, it occurs to me that if the sort must come
from a user-supplied bit of SQL, it would be simpler to just direct the
user to submit it in the main query, in an additional dedicated column.
For instance, to get a specific, separate order on "h",
let the user change this:
SELECT v, h, c FROM v_data ORDER BY v;
into that:
SELECT v, h, row_number() over(order by h) as hn, c FROM v_data ORDER BY v;
then with a relatively simple modification to the patch,
this invocation:
\crosstabview v h:hn c
would display "h" in the horizontal header ordered by "hn".
ISTM this handles two objections raised upthread:
1. The ORDER BY inside OVER() can be augmented with additional
clauses such as lc_collate, desc, nulls last, etc... contrary to
the controversed "+/-" syntax.
2. a post-sort "backdoor" query is no longer necessary.
The drawback for me is that this change doesn't play out with
my original scenario for the command, which is to give the ability to
scrutinize query results in crosstab mode, playing with variations on
what column is pivoted and how headers for both directions get sorted,
while ideally not changing _at all_ the original query in the query
buffer, but just invoking successive \crosstabview [args] commands
with varying arguments.
Best regards,
--
Daniel Vérité
PostgreSQL-powered mailer: http://www.manitou-mail.org
Twitter: @DanielVerite
В списке pgsql-hackers по дате отправления