В MySQL строка NULL
и пустая (''
) строка не одно и то же.
У вас есть несколько вариантов, для согласованности я использую CASE ...
CASE WHEN main_table.title_column = '' THEN 'no name' ELSE main_table.title_column END
Другими параметрами могут быть COALESCE (NULLIF ()), показанный в другом ответе (который использует NULLIF (), чтобы превратить пустые строки в NULL, а затем использует объединение, как вы хотели) .
Или, возможно, просто IIF (), чтобы сократить оператор CASE ...
IIF(main_table.title_column = '', 'no name', main_table.title_column)