在MySQL中,DESCRIBE 和 EXPLAIN 是同义词。可以使用两者中的任何一个来获取表结构信息或者查询执行计划(查询执行计划:对MySQL执行查询的解释) 事实上,尽管说二者是同义词。但是,DESCRIBE 更多地用于获取表结构信息;而 EXPLAIN 更多用于获取查询执行计划。 语法如下: {EXPLAIN | DESCRIBE | DESC} tbl_name [col_name | wild] {EXPLAIN | DESCRIBE | DESC} [explain_type] {explainable_stmt | FOR CONNECTION connection_id} explain_type: {
EXTENDED | PARTITIONS | FORMAT = format_name } format_name: {
TRADITIONAL | JSON } explainable_stmt: {
SELECT statement | DELETE statement | INSERT statement | REPLACE statement | UPDATE statement } mysql> DESCRIBE pet; # 列出 pet 表的所有列 +---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | name | varchar(20) | YES | | NULL | | | owner | varchar(20) | YES | | NULL | | | species | varchar(20) | YES | | NULL | | | sex | char(1) | YES | | NULL | | | birth | date | YES | | NULL | | | death | date | YES | | NULL | | +---------+-------------+------+-----+---------+-------+ 6 rows in set (0.02 sec) DESCRIBE 提供了一张表中的列的信息。 DESCRIBE is a shortcut for SHOW COLUMNS. "SHOW COLUMNS" 语法能提供更多的关于输出列的信息。 默认情况下,DESCRIBE 显示表中所有列的信息。 如果指定col_name的话,将只显示指定的列的信息。 mysql> DESCRIBE pet name; # 只显示 name 列的信息 +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | name | varchar(20) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 1 row in set (0.02 sec) 如果指定wild的话,它应该是一个匹配字符串。可以包含 % (表示任意字符)和 _ (表示单个字符);这种情况下,输出结果将会是匹配到的列的信息。 如果列名里边没有空字符或特殊字符,wild 没有必要使用引号。 mysql> DESCRIBE pet ___; # 输出列名是三个字符的列的信息 +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | sex | char(1) | YES | | NULL | | +-------+---------+------+-----+---------+-------+ 1 row in set (0.02 sec) mysql> DESCRIBE pet "d%"; # 输出列名是以字母d开头的列的信息 +-------+------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+------+------+-----+---------+-------+ | death | date | YES | | NULL | | +-------+------+------+-----+---------+-------+ 1 row in set (0.01 sec)
今天的文章
mysql desc用法_mysql8.2和8.0的区别分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/60648.html