Интересно, ли это возможный выполнить команду mysql, которая может выбрать альтернативное поле, если первое данное поле пусто на той же таблице.
Пример: у Меня есть таблица, названная "сообщениями", которые имеют "введение" и "содержание". В том же операторе я хотел бы выбрать в результате "содержание", если "введение" пусто, но не имеющий обоих в массиве результата.
Заранее спасибо
Вы можете использовать функцию IF :
SELECT IF(LENGTH(intro)>0, intro, content)
FROM posts
Или вы можете проверить NULL
, если вы имеете в виду, что пустое значение равно NULL
Coalesce - это то, что вы ищете.
SELECT COALESCE(intro, content) AS column1
FROM table
Предполагается, что intro - это null, а не строка нулевой длины.
Есть два возможных способа. Один способ - с помощью оператора case.
Select case when field1 <> '' then field2 else field1 end
или вы можете использовать coalesce.
select coalesce(field1, field2)