Вывести нулевое значение, если столбец отсутствует
Пожалуйста, извините, если это глупый вопрос.
Я хотел выбрать так много столбцов из разных таблиц. Поэтому я создал PHP-скрипт для того же. Скрипт работает правильно. Но некоторые столбцы отсутствуют в некоторых таблицах.
Поэтому, когда я запускаю скрипт, он выдает мне ошибку "неизвестный столбец в списке полей", что абсолютно правильно, потому что этот столбец отсутствует в этой таблице.
Здесь возникает мой вопрос: есть ли способ выбрать столбцы, если столбец отсутствует, он должен дать значение NULL вместо ошибки "Неизвестный столбец в списке полей".
Заранее спасибо
2 ответа
select * from information_schema.columns where table_name='xxxx' and TABLE_SCHEMA='xxxx' and column_name='xxxx'
Это даст результат, если столбец присутствует для этой таблицы или нет
Я думаю, что вы можете сойти с рук с помощью COALESCE()
функция MySQL
SELECT COALESCE(@maybe_col, null) AS norm_col FROM database;
https://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html