mysql query "SHOW COLUMNS FROM table like 'colmunname'": вопросы

У меня есть вопрос о SHOW COLUMNS FROM table like 'column name'". Я уже несколько раз пробовал некоторые тесты, похоже, что "где column name='column'.

Тем не менее, я просто хотел бы поблагодарить вас заблаговременно.

Кроме того, я хотел бы сказать, почему я не могу использовать SHOW COLUMNS FROM table = 'columnname'?

Ответы

Ответ 1

Это больше похоже на

WHERE column_name LIKE 'column name'

Поскольку он использует LIKE, вы можете поместить шаблоны шаблонов в параметр, например

SHOW COLUMNS FROM table LIKE '%id'

найдут все столбцы, которые заканчиваются id.

Если нет подстановочных знаков, LIKE эквивалентен =.

Если вы не хотите использовать LIKE, вы можете использовать WHERE:

SHOW COLUMNS FROM table WHERE field = 'column name';

В выводе SHOW COLUMNS field содержит имена столбцов. Предложение WHERE также позволяет тестировать другие атрибуты, например

SHOW COLUMNS FROM table WHERE type LIKE 'varchar%'

найдут все столбцы VARCHAR.

Ответ 2

SHOW... LIKE ведет себя как использование оператора LIKE в WHERE для общего запроса:

Синтаксис SHOW COLUMNS

IN} db_name] [LIKE 'pattern' | WHERE expr]

SHOW COLUMNS отображает информацию о столбцах в данной таблице. Он также работает для просмотров. Предложение LIKE, если оно присутствует, указывает, какие имена столбцов должны совпадать. Предложение WHERE может быть предоставлено для выбора строк с использованием более общих условий, как описано в разделе 21.32, "Расширения к операторам SHOW".

Акцент на меня.

Ответ 3

Где используется, чтобы получить точное соответствие, где, как, например, используется для получения более широкого диапазона столбцов с использованием подстановочных знаков.

SHOW COLUMNS FROM table like 'my%";

Вышеупомянутые пункты найдут все столбцы, которые начинаются с моего.

Где, как и в случае с предложением where, вы не можете использовать подстановочные знаки и получать только точные соответствия. Очевидно, что вы могли бы использовать, где с between, > или < и т.д., в других случаях, которые дали бы вам более широкий диапазон, но до сих пор не позволяют использовать любые символы.

Ответ 4

возможно, это: SHOW COLUMNS FROM accounts LIKE'id '