Re: Specifying text to substitute for NULLs in selects

Поиск
Список
Период
Сортировка
От Adrian Klaver
Тема Re: Specifying text to substitute for NULLs in selects
Дата
Msg-id 200811071642.58551.aklaver@comcast.net
обсуждение исходный текст
Ответ на Re: Specifying text to substitute for NULLs in selects  ("Brent Wood" <b.wood@niwa.co.nz>)
Список pgsql-general
On Friday 07 November 2008 4:05:08 pm Brent Wood wrote:
> Thanks guys,
>
> I'm aware of those options, what I was wondering was if there is a more
> generic way, for example the Empress RDBMS allows 'set MSNULLVALUE "NA"',
> and all NULLs will from then on be output as NA.
>
> The COPY option is closest to a generic setting, but doesn't work with a
> select query, just a table dump.
>
> I guess something like the following will work from the shell, although it
> is hardly elegant :-)...
>
> psql -d DB -Atc "select 'xxxx', attr, attr, attr, 'xxxx' from ....;" | sed
> 's/||/|NA|/' | sed 's/xxxx|//' | sed 's/|xxxx//' > data.txt
>
> Slightly simpler than the case statement approach in Postgres is COALESCE()
>
> eg:  select COALESCE(attr,'NA') as attr from table;
>
> but this still needs to be applied to every column in the outout which may
> have nulls. rather than a generic one off setting. A view using COALESCE()
> may be the easiest way for users to have this capability automatically..
>
> Thanks,
>
>    Brent Wood
>
>

Using psql
http://www.postgresql.org/docs/8.2/interactive/app-psql.html
lfnw=# \a\t\f ','\pset null 'NA'
Output format is unaligned.
Showing only tuples.
Field separator is ",".
Null display is "NA".
lfnw=# SELECT null,1;
NA,1


--
Adrian Klaver
aklaver@comcast.net

В списке pgsql-general по дате отправления:

Предыдущее
От: Ivan Sergio Borgonovo
Дата:
Сообщение: Re: Specifying text to substitute for NULLs in selects
Следующее
От: Jason Long
Дата:
Сообщение: Re: archive command Permission Denied?