Установите переменные по умолчанию в функциях MySQL, если значения не верны

0

при выборе имени клиента из таблицы база данных должна вызывать функцию, которая форматирует имя для

фамилия Имя

Созданная мной функция

CREATE DEFINER='root'@'localhost' FUNCTION 'FORMAT_NAME'(firstname VARCHAR(25), lastname VARCHAR(25)) RETURNS varchar(50) CHARSET utf8
RETURN CONCAT(lastname, ', ', firstname)

В моем SELECT я могу написать

SELECT FORMAT_NAME(customer.firstname, customer.lastname) as Name

и это возвращает меня

Доу, Джон

Обычно я бы решил это по коду, но мне нужно использовать FUNCTION и настроить стандартные переменные.

Как я могу определить переменные по умолчанию здесь, если значение пустое или пустое или просто неверное?

Теги:

1 ответ

1
Лучший ответ

Вам просто нужно использовать функцию COALESCE:

CREATE DEFINER='root'@'localhost' FUNCTION 'FORMAT_NAME'(firstname VARCHAR(25), 
    lastname VARCHAR(25)) RETURNS varchar(50) CHARSET utf8
RETURN CONCAT(COALESCE(lastname, 'myDefaulValueName'), ', ', COALESCE(firstname, 'myDefaultValueFName'))

Ещё вопросы

Сообщество Overcoder
Наверх
Меню