2015-10-06 6 views
0

Есть ли способ получить имена столбцов запроса, который не возвращает данные? Результат этого запроса будет пустым. Есть ли способ найти имена столбцов, когда нет результата?Как получить имена столбцов из пустого результата запроса выбора MySQL

Обратите внимание, что я знаю решения, использующие DESCRIBE, и выбираю column_name из information_schema.columns где table_name = 'person'; , но мне нужно более гибкое решение, соответствующее этим многоколоночным запросам.

Также обратите внимание, что я все еще использую исходное расширение PHP MySQL (так что MySQLi и PDO).

ответ

0

Вы должны, Выбрать COLUMN_NAME От INFORMATION_SCHEMA. COLUMNS Где TABLE_SCHEMA = 'yourdb' И TABLE_NAME = 'yourtablename';

1

Выполните следующую команду, если результат предыдущего запроса пуст

SHOW columns FROM your-table; 

Для более подробной информации проверить this.

0

Я не уверен, если это удовлетворит вас, но вы можете сделать это

SELECT *, COUNT(*) FROM table; 

Он будет возвращать значения null (кроме последнего столбца, который вы можете игнорировать), если запрос пуст, и вы сможете получить доступ все столбцы. Это не правильный способ сделать это, и выбор имен от INFORMATION_SCHEMA будет гораздо лучшим решением. Обратите внимание, что результат агрегируется, и вам нужно использовать GROUP BY, чтобы получить больше результатов, если они есть.

Смежные вопросы