при выборе имени клиента из таблицы база данных должна вызывать функцию, которая форматирует имя для
фамилия Имя
Созданная мной функция
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 и настроить стандартные переменные.
Как я могу определить переменные по умолчанию здесь, если значение пустое или пустое или просто неверное?
Вам просто нужно использовать функцию 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'))