Re: Re: csv format for psql
Pavel Stehule <pavel.stehule@gmail.com>
From: Pavel Stehule <pavel.stehule@gmail.com>
To: Fabien COELHO <coelho@cri.ensmp.fr>
Cc: Daniel Verite <daniel@manitou-mail.org>,
David Steele <david@pgmasters.net>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2018-03-22T18:28:14Z
Lists: pgsql-hackers
Attachments
- default_format_fieldsep.patch (text/x-patch) patch
2018-03-22 18:38 GMT+01:00 Fabien COELHO <coelho@cri.ensmp.fr>: > > Hello Pavel, > > Using \pset format csv means overwriting field sep every time - nobody uses >> | >> > > Yep. The alternative is to have a csv-specific separator variable, which > does not seem very useful, must be remembered, but this is indeed debatable. > > I think so dependency on order of psql arguments is significant problem >> > > This is intentional, and this issue/feature already exists, the last > argument overwrite previous settings thus will win, eg: > > psql --pset=format=troff --html -c 'SELECT 1' > > Will output in html, not in troff. > Can we introduce some format specific default separators - if we would not to introduce csv_field_sep options? It should not be hard. All formats can has '|' like now, and csv can have a ',' - then if field separator is not explicit, then default field separator is used, else specified field separator is used. You can see my idea in attached patch Regards Pavel postgres=# \pset format csv Output format is csv. postgres=# select * from foo; a,b,c 1,2,Hello 3,4,Nazdar postgres=# \pset fieldsep ; Field separator is ";". postgres=# select * from foo; a;b;c 1;2;Hello 3;4;Nazdar > > -- > Fabien. >
Commits
-
Add CSV table output mode in psql.
- aa2ba50c2c13 12.0 landed
-
Reorganize format options of psql in alphabetical order
- add9182e5908 12.0 landed
-
Complete TODO item:
- 862b20b38228 8.0.0 cited