what is the best way to concat fields that may contain null as if they were empty strings

Поиск
Список
Период
Сортировка
От Reid Thompson
Тема what is the best way to concat fields that may contain null as if they were empty strings
Дата
Msg-id 20091009160630.GB29644@ateb.com
обсуждение исходный текст
Ответы Re: what is the best way to concat fields that may contain null as if they were empty strings  (Andreas Kretschmer <akretschmer@spamfence.net>)
Список pgsql-general
In the case where a_text is null, I essentially want the same result as the case when a_text = ''.

would this:
  select a_int || coalesce(a_text,'') from test1 where a_int = 1000002;
be the proper way?


postgres=# \d test1
                                     Table "public.test1"
 Column |            Type             |                       Modifiers
--------+-----------------------------+-------------------------------------------------------
 a_int  | integer                     | not null default nextval('test1_a_int_seq'::regclass)
 a_text | character varying(200)      |
 dt     | timestamp without time zone | default now()
Indexes:
    "test1_pkey" PRIMARY KEY, btree (a_int)

postgres=# select count(*) from test1;
  count
---------
 1000000
(1 row)

postgres=# insert into test1(a_text) values('');
INSERT 0 1
postgres=# select max(a_int) from test1;
   max
---------
 1000001
(1 row)

postgres=# select a_int || a_text from test1 where a_int = 1000001;
 ?column?
----------
 1000001
(1 row)

postgres=# insert into test1(a_text) values(null);
INSERT 0 1
postgres=# select a_int || a_text from test1 where a_int = 1000002;
 ?column?
----------

(1 row)

postgres=# select * from test1 where a_int >= 1000001;
  a_int  | a_text |             dt
---------+--------+----------------------------
 1000001 |        | 2009-10-09 11:54:38.455556
 1000002 |        | 2009-10-09 11:56:00.37607
(2 rows)





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

Предыдущее
От: Andrew Gould
Дата:
Сообщение: Re: interface for "non-SQL people"
Следующее
От: Whit Armstrong
Дата:
Сообщение: array question