Как сложить Null cо строкой, чтобы строка получалась

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
Roman
Сообщения: 2
Зарегистрирован: 04 фев 2005, 03:16

Как сложить Null cо строкой, чтобы строка получалась

Сообщение Roman » 04 фев 2005, 03:30

база: FireBird 1.5
есть запросы примерно следующего вида

select p.name || ' ' || s.name as fullname
from person p
left join state s on p.state_id=s.id

person - таблица с людьми, state - справочник штатов

в таблице person поле state_id может быть null - вполне нормальная ситуация. Фактически мне нужно сложить null со строкой и получить строку а не null. Без этого я не могу использовать View - на выходе мне нужно одно поле с полным именем (собранным по определённым правилам).

:) в доке по Yaffi видел конструкции вида case и iif,
которые позволяют на лету производить анализ.
(в MSSQL TSQL также есть case и isNull например)
Как это бороть в FireBird? Помогайте :( плиз

Broom
Сообщения: 8
Зарегистрирован: 27 окт 2004, 10:02

Сообщение Broom » 04 фев 2005, 06:59

1. В FB тоже имеется case.
2. См. Release Notes от FB.
3. COALESCE.

Roman
Сообщения: 2
Зарегистрирован: 04 фев 2005, 03:16

спасибо

Сообщение Roman » 06 фев 2005, 00:30

Там действительно указано, что есть такая фича.
Просто ранее я пробовал и никак не выходило.
Спасибо за подсказку. :)

Ответить