PostgreSQL — конкатенация полей с NULL значениями

Простой запрос , в котором соединяются два поля. Вроде всё должно работать, но если name или name2 содержат NULL, то name||name2 будет NULL. Логично, в общем. Что делать? Преобразуем исходный запрос

[cc lang=’sql’ ]SELECT id, name || ‘ ‘ || name2  as name
FROM names;[/cc]
в

[cc lang=’sql’ ]SELECT id, array_to_string(array[name ,name2],’ ‘)  as name
FROM names;[/cc]

и получаем нормальный ожидаемый результат!

Leave a Reply