MySQL - Show Columns: A Beginner's Guide

Здравствуйте, ambitные энтузиасты баз данных! Сегодня мы окунемся в奇妙ный мир MySQL и рассмотрим удобный инструмент под названием "Show Columns." Не волнуйтесь, если вы никогда не писали ни строчки кода раньше - я буду вашим доброжелательным проводником в этом путешествии, и мы будем двигаться шаг за шагом.

MySQL - Show Columns

Статмент MySQL Show Columns

Давайте начнем с азов. Представьте себе большой filing cabinet (шкаф с файлами, то есть вашу базу данных) с различными ящиками (таблицами). Иногда вам хочется узнать, какую информацию может содержать каждый ящик. Вот где Statement SHOW COLUMNS становится полезным!

Основной синтаксис выглядит так:

SHOW COLUMNS FROM table_name;

Допустим, у нас есть таблица под названием students. Чтобы увидеть, какие столбцы она имеет, мы напишем:

SHOW COLUMNS FROM students;

Это может вернуть что-то вроде:

+-----------+--------------+------+-----+---------+----------------+
| Field     | Type         | Null | Key | Default | Extra          |
+-----------+--------------+------+-----+---------+----------------+
| id        | int          | NO   | PRI | NULL    | auto_increment |
| name      | varchar(50)  | YES  |     | NULL    |                |
| age       | int          | YES  |     | NULL    |                |
| grade     | varchar(2)   | YES  |     | NULL    |                |
+-----------+--------------+------+-----+---------+----------------+

Это告诉我们, что наша таблица students имеет четыре столбца: id, name, age и grade. Также это даёт информацию о типе данных каждого столбца, можно ли они быть NULL, является ли он ключом и какие значения по умолчанию или дополнительные свойства они имеют.

Оператор LIKE

Теперь, что если у вас есть таблица с множеством столбцов, но вас интересуют только те, которые начинаются с определенной буквы? Вот где comes in handy оператор LIKE!

SHOW COLUMNS FROM table_name LIKE 'pattern';

Например, если мы хотим увидеть все столбцы в нашей таблице students, начинающиеся на 'a', мы напишем:

SHOW COLUMNS FROM students LIKE 'a%';

Это может вернуть:

+-------+------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------+------+-----+---------+-------+
| age   | int  | YES  |     | NULL    |       |
+-------+------+------+-----+---------+-------+

Символ '%' является野卡, который соответствует любой последовательности символов. Таким образом, 'a%' означает "начинается с 'a' и может иметь что угодно после этого."

Оператор WHERE

Оператор WHERE позволяет нам фильтровать результаты на основе конкретных условий. Это как если бы вы говорили вашему filing cabinet (шкафу с файлами): "Я хочу увидеть только те ящики, которые соответствуют этим критериям."

SHOW COLUMNS FROM table_name WHERE condition;

Например, если мы хотим увидеть все целочисленные столбцы в нашей таблице students:

SHOW COLUMNS FROM students WHERE Type LIKE 'int%';

Это даст нам:

+-------+------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra          |
+-------+------+------+-----+---------+----------------+
| id    | int  | NO   | PRI | NULL    | auto_increment |
| age   | int  | YES  |     | NULL    |                |
+-------+------+------+-----+---------+----------------+

Оператор FULL

Иногда вы хотите получить ВСЕ возможные данные о своих столбцах. Вот где comes in handy оператор FULL. Это как если бы вы просили ваш filing cabinet (шкаф с файлами) рассказать вам все свои секреты!

SHOW FULL COLUMNS FROM table_name;

Используя нашу таблицу students:

SHOW FULL COLUMNS FROM students;

Это может вернуть:

+-----------+--------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+
| Field     | Type         | Collation       | Null | Key | Default | Extra          | Privileges                      | Comment |
+-----------+--------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+
| id        | int          | NULL            | NO   | PRI | NULL    | auto_increment | select,insert,update,references |         |
| name      | varchar(50)  | utf8_general_ci | YES  |     | NULL    |                | select,insert,update,references |         |
| age       | int          | NULL            | YES  |     | NULL    |                | select,insert,update,references |         |
| grade     | varchar(2)   | utf8_general_ci | YES  |     | NULL    |                | select,insert,update,references |         |
+-----------+--------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+

Это даёт нам ещё больше информации, такую как collation (как данные排序) и privileges.

Показ столбцов таблицы с использованием клиентской программы

Теперь давайте поговорим о том, как вы можете использовать эти команды в реальной жизни. В большинстве случаев вы будете использовать клиентскую программу для взаимодействия с вашей базой данных MySQL. Это может быть командная строка MySQL, phpMyAdmin или множество других GUI-инструментов.

В командной строке MySQL вы просто наберете эти команды exactly as we've written them above. В GUI-инструменте у вас может быть окно "Query", где вы можете вводить эти команды.

Вот таблица, резюмирующая различные команды SHOW COLUMNS, которые мы узнали:

Команда Описание Пример
SHOW COLUMNS Показывает базовую информацию о столбцах SHOW COLUMNS FROM students;
SHOW COLUMNS LIKE Фильтрует столбцы по шаблону SHOW COLUMNS FROM students LIKE 'a%';
SHOW COLUMNS WHERE Фильтрует столбцы по условию SHOW COLUMNS FROM students WHERE Type LIKE 'int%';
SHOW FULL COLUMNS Показывает детализированную информацию о столбцах SHOW FULL COLUMNS FROM students;

Помните, практика makes perfect! Не бойтесь экспериментировать с этими командами на своих таблицах. Чем больше вы будете их использовать, тем комфортнее вам будет.

И вот и все! Теперь у вас есть знания, чтобы исследовать структуру ваших таблиц MySQL, как профессион

Credits: Image by storyset