powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Глюк, и полезность?
4 сообщений из 4, страница 1 из 1
Глюк, и полезность?
    #34200509
Работал на Postgres версии 7.4, вот такой запрос выполнялся прекрасно:

db=> select lastname||' '||firstname||' '||middlename as name from clients where id=33;
name
-----------------
Пупкин
(1 row)

При том, что firstname и middlename равняются null.
Однако, при переходе на версию 8.1 тот же запрос возвращает пустую строку:
db1=> select lastname||' '||firstname||' '||middlename||' ' as name from clients where id=33;
name
------

(1 row)

Данные те же:
db1=> select lastname,firstname,middlename as name from clients where id=33;
lastname | firstname | name
----------------------+-----------+------
Пупкин | |
(1 row)

Кто подскажет, как красиво вылечить это?
...
Рейтинг: 0 / 0
Глюк, и полезность?
    #34200582
ChameLe0n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
select coalesce(lastname,'')||' '||coalesce(firstname,'')||' '||coalesce(middlename,'')||' ' as name from clients where id=33;

?
...
Рейтинг: 0 / 0
Глюк, и полезность?
    #34200605
4321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
CREATE OR REPLACE FUNCTION text_cat2(text,text)
  RETURNS text AS
$BODY$
SELECT CASE WHEN $ 1  IS NULL THEN $ 2 
WHEN $ 2  IS NULL THEN $ 1 
ELSE $ 1 ||$ 2  
END
;
	

 $BODY$
  LANGUAGE 'sql' IMMUTABLE;

CREATE OPERATOR |||(
  PROCEDURE = text_cat2,
  LEFTARG = text,
  RIGHTARG = text);
SELECT ('a' ||| Null ||| 'b'):: varchar( 12 );
---
"ab"
...
Рейтинг: 0 / 0
Глюк, и полезность?
    #34201628
coalesсe красивее, по моему мнению :) спасибо!
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Глюк, и полезность?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]