Если ваши «пустые» поля фактически установлены на NULL
:
Для чистого решения MySQL вы можете использовать COALESCE
для достижения того, что выхочу предположить, что "пустые" поля установлены на NULL
.Например:
SELECT COALESCE(`user_name`, 'No data') AS `username` FROM `users`
IFNULL
работает аналогичным образом и, вероятно, лучше подходит для этой конкретной работы, чем COALESCE
:
SELECT IFNULL(`username`, 'No data') AS `username` FROM `users`
COALESCE
может иметь много аргументов и просто возвращает первый NOT NULL
аргумент, тогда как IFNULL
принимает только два аргумента и принимает первый NOT NULL
аргумент.
Если ваши «пустые» поля действительнопустые строки:
Если ваши значения являются пустыми строками, а не NULL
, тогда вы можете использовать:
SELECT IF('' = `username`, 'No data', `username`) AS `username` FROM `users`
Для получения дополнительной информации о MySQL IF
функция см. Руководство .
Если у вас есть комбинация как пустых строк, так и NULL
:
Вы можете использовать:
SELECT IF('' = `username` OR `username` IS NULL, 'No data', `username`) AS `username` FROM `users`