PostgreSQL Coalesce - функция для слияния значений в одно поле
PostgreSQL COALESCE - это функция, которая принимает несколько аргументов и возвращает первый из них, который не является NULL. Если все аргументы равны NULL, функция возвращает NULL.
Примеры:
1. Простой пример использования COALESCE:
SELECT COALESCE(NULL, 'первый', 'второй');
В этом запросе функция COALESCE принимает три аргумента. Первый аргумент является NULL, поэтому она движется дальше, чтобы проверить следующий аргумент. Второй аргумент не равен NULL, поэтому функция возвращает «первый», игнорируя третий аргумент.
2. COALESCE может использоваться для замены NULL на значение по умолчанию:
SELECT COALESCE(name, 'Неизвестный пользователь') AS username FROM users;
В этом запросе, если значение имени пользователя равно NULL, функция COALESCE вернет значение «Неизвестный пользователь» в столбце alias «username».
3. COALESCE может использоваться для преобразования NULL в определенное значение:
SELECT COALESCE(price, 0) AS price FROM products;
В этом запросе, если значение цены равно NULL, функция COALESCE вернет значение 0 в столбце alias «price».
4. COALESCE может использоваться для объединения двух столбцов таблицы, если один из них равен NULL:
SELECT COALESCE(city, state, 'США') AS location FROM addresses;
В этом запросе, если значение города равно NULL, функция COALESCE вернет значение штата, если значение штата тоже равно NULL, функция вернет значение 'США' в столбце alias «location».
В конце концов, функция COALESCE очень полезна, когда нужно заменить значения NULL на определенное значение или объединить несколько столбцов.