SHOW [FULL] COLUMNS FROM
SHOW [FULL] COLUMNS FROM <table_name> 语句用于以表格格式描述表或视图中的列。可选关键字 FULL 用于显示当前用户对该列的权限,以及表定义中的 comment。
SHOW [FULL] FIELDS FROM <table_name>、DESC <table_name>、DESCRIBE <table_name> 和 EXPLAIN <table_name> 语句都是 SHOW [FULL] COLUMNS FROM 的别名。
注意:
DESC TABLE <table_name>、DESCRIBE TABLE <table_name>和EXPLAIN TABLE <table_name>与上面的语句并不等价,它们是DESC SELECT * FROM <table_name>的别名。
语法图
ShowStmt:

ShowColumnsFilterable:

OptFull:

FieldsOrColumns:

ShowTableAliasOpt:

FromOrIn:

TableName:

ShowDatabaseNameOpt:

DBName:

ShowLikeOrWhereOpt:

示例
1. create view v1 as select 1;
1. Query OK, 0 rows affected (0.11 sec)
1. show columns from v1;
1. +-------+-----------+------+------+---------+-------+
2. | Field | Type | Null | Key | Default | Extra |
3. +-------+-----------+------+------+---------+-------+
4. | 1 | bigint(1) | YES | | NULL | |
5. +-------+-----------+------+------+---------+-------+
6. 1 row in set (0.00 sec)
1. desc v1;
1. +-------+-----------+------+------+---------+-------+
2. | Field | Type | Null | Key | Default | Extra |
3. +-------+-----------+------+------+---------+-------+
4. | 1 | bigint(1) | YES | | NULL | |
5. +-------+-----------+------+------+---------+-------+
6. 1 row in set (0.00 sec)
1. describe v1;
1. +-------+-----------+------+------+---------+-------+
2. | Field | Type | Null | Key | Default | Extra |
3. +-------+-----------+------+------+---------+-------+
4. | 1 | bigint(1) | YES | | NULL | |
5. +-------+-----------+------+------+---------+-------+
6. 1 row in set (0.00 sec)
1. explain v1;
1. +-------+-----------+------+------+---------+-------+
2. | Field | Type | Null | Key | Default | Extra |
3. +-------+-----------+------+------+---------+-------+
4. | 1 | bigint(1) | YES | | NULL | |
5. +-------+-----------+------+------+---------+-------+
6. 1 row in set (0.00 sec)
1. show fields from v1;
1. +-------+-----------+------+------+---------+-------+
2. | Field | Type | Null | Key | Default | Extra |
3. +-------+-----------+------+------+---------+-------+
4. | 1 | bigint(1) | YES | | NULL | |
5. +-------+-----------+------+------+---------+-------+
6. 1 row in set (0.00 sec)
1. show full columns from v1;
1. +-------+-----------+-----------+------+------+---------+-------+---------------------------------+---------+
2. | Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment |
3. +-------+-----------+-----------+------+------+---------+-------+---------------------------------+---------+
4. | 1 | bigint(1) | NULL | YES | | NULL | | select,insert,update,references | |
5. +-------+-----------+-----------+------+------+---------+-------+---------------------------------+---------+
6. 1 row in set (0.00 sec)
1. show full columns from mysql.user;
1. +-----------------------+---------------+-------------+------+------+---------+-------+---------------------------------+---------+
2. | Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment |
3. +-----------------------+---------------+-------------+------+------+---------+-------+---------------------------------+---------+
4. | Host | char(64) | utf8mb4_bin | NO | PRI | NULL | | select,insert,update,references | |
5. | User | char(32) | utf8mb4_bin | NO | PRI | NULL | | select,insert,update,references | |
6. | authentication_string | text | utf8mb4_bin | YES | | NULL | | select,insert,update,references | |
7. | Select_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
8. | Insert_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
9. | Update_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
10. | Delete_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
11. | Create_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
12. | Drop_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
13. | Process_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
14. | Grant_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
15. | References_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
16. | Alter_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
17. | Show_db_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
18. | Super_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
19. | Create_tmp_table_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
20. | Lock_tables_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
21. | Execute_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
22. | Create_view_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
23. | Show_view_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
24. | Create_routine_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
25. | Alter_routine_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
26. | Index_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
27. | Create_user_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
28. | Event_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
29. | Trigger_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
30. | Create_role_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
31. | Drop_role_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
32. | Account_locked | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
33. | Shutdown_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
34. | Reload_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
35. | FILE_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
36. | Config_priv | enum('N','Y') | utf8mb4_bin | NO | | N | | select,insert,update,references | |
37. +-----------------------+---------------+-------------+------+------+---------+-------+---------------------------------+---------+
38. 33 rows in set (0.01 sec)
MySQL 兼容性
SHOW [FULL] COLUMNS FROM 语句与 MySQL 完全兼容。如发现任何兼容性差异,请在 GitHub 上提交 issue。
