MySQL 显示表

一、MySQL 显示表

当我们有许多包含各种表的数据库时,查看MySQL的表非常重要。有时,许多数据库中的表名相同;在这种情况下,此查询非常有用。我们可以使用以下语句获取数据库的表信息数量:

mysql> SHOW TABLES;  

要获取表列表,需要执行以下步骤:

第 1 步:打开带有mysql> 提示符的 MySQL 命令行客户端。接下来,使用您在安装 MySQL 期间创建的密码登录MySQL 数据库服务器。现在,您已连接到 MySQL 服务器,您可以在其中执行所有 SQL 语句。

第 2 步:接下来,使用以下命令选择特定数据库:

mysql> USE database_name;  

第 3 步:最后,执行 SHOW TABLES 命令。

让我们通过下面给出的示例来理解它。假设我们有一个包含许多表的数据库名称“ mystudentdb ”。然后执行下面的语句来列出它包含的表:

mysql> USE mystudentdb;  
mysql>SHOW TABLES;  

输出结果为

我们还可以在 SHOW TABLES 查询中使用 FULL 修饰符来获取出现在第二个输出列中的表的类型(Base 或 View)。

mysql> SHOW FULL TABLES;  

如果我们想显示或列出来自不同数据库或您未连接的数据库的表名而不切换,MySQL 允许我们使用 FROM 或 IN 子句后跟数据库名。参考以下语句:

mysql> SHOW TABLES IN database_name;  

上面的语句也可以写成:

mysql> SHOW TABLES FROM database_name;  

当我们执行以下语句时,我们将得到相同的结果:

mysql> SHOW TABLES FROM mystudentdb;  

或者

mysql> SHOW TABLES IN mystudentdb;  

输出结果为

二、使用LIKE或WHERE关键词显示表

MySQL 中的 Show Tables 命令还提供了一个选项,允许我们使用与 LIKE 和 WHERE 子句匹配的不同模式来过滤返回的表。

语法

以下是通过 show table 命令使用模式匹配的语法:

mysql> SHOW TABLES LIKE pattern;  

或者

mysql> SHOW TABLES WHERE expression;  

我们可以通过下面给出的示例来理解它,其中百分号 (%) 符号假定为零、一个或多个字符:

mysql> SHOW TABLES FROM mystudentdb LIKE "stud%";  

上面语句执行结果如下

让我们看看另一个返回以"time"开头的表名的语句:

mysql> SHOW TABLES IN mysql LIKE "time%";  

输出结果为

现在,我们将看看如何使用带有 SHOW TABLES 命令的WHERE子句来列出所选数据库中不同类型的表(基本类型或视图类型):

mysql> SHOW TABLES FROM sakila WHERE table_type= "VIEW";  

上面语句执行结果如下

需要注意的是,如果 MySQL 不提供访问 Base 表或视图的权限,那么我们无法获取 SHOW TABLES 命令的结果集中的表。

在这里,我们还可以看到另一个带有 WHERE 子句的 Show Tables 语句示例:

mysql> SHOW TABLES In mystudentdb WHERE Tables_in_mystudentdb= "employees";  

上面语句执行结果如下

热门文章

优秀文章