千家信息网

mysql如何查询数据库有多少表

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要为大家展示了"mysql如何查询数据库有多少表",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"mysql如何查询数据库有多少表"这篇文章吧。my
千家信息网最后更新 2026年11月02日mysql如何查询数据库有多少表

这篇文章主要为大家展示了"mysql如何查询数据库有多少表",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"mysql如何查询数据库有多少表"这篇文章吧。

mysql查询数据库有多少表的方法:1、使用MySQL客户端登录到MySQL数据库服务器;2、使用"USE 数据库名"语句切换到指定的数据库中;3、使用"SHOW TABLES;"语句列出指定数据库中的所有表即可。

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

在mysql中,可以利用SHOW TABLES语句来查询数据库有多少表,该语句可以列出数据库的所有表。

要在MySQL数据库中列出所有表,请按照下列步骤操作:

  • 使用MySQL客户端(如mysql)登录到MySQL数据库服务器

  • 使用 USE 数据库名 语句切换到特定的数据库。

  • 使用SHOW TABLES命令。

下面说明了MySQL SHOW TABLES命令的语法:

SHOW TABLES;

MySQL SHOW TABLES示例

以下示例说明如何列出yiibaidb数据库中的所有表。

步骤1 - 连接到MySQL数据库服务器:

C:\Users\Administrator>mysql -u root -p

步骤2 -切换到yiibaidb数据库:

mysql> USE yiibaidb;Database changedmysql>

步骤3 - 显示yiibaidb数据库中的所有表:

mysql> show tables;+--------------------+| Tables_in_yiibaidb |+--------------------+| aboveavgproducts   || article_tags       || bigsalesorder      || contacts           || customerorders     || customers          || departments        || employees          || employees_audit    || officeinfo         || offices            || offices_bk         || offices_usa        || orderdetails       || orders             || organization       || payments           || price_logs         || productlines       || products           || saleperorder       || user_change_logs   || v_contacts         || vps                |+--------------------+24 rows in set

SHOW TABLES命令可显示表是基表还是视图。 要在结果中包含表类型,请使用SHOW TABLES语句,如下所示 -

SHOW FULL TABLES;

执行上面语句,如下所示 -

mysql> SHOW FULL TABLES;+--------------------+------------+| Tables_in_yiibaidb | Table_type |+--------------------+------------+| aboveavgproducts   | VIEW       || article_tags       | BASE TABLE || bigsalesorder      | VIEW       || contacts           | BASE TABLE || customerorders     | VIEW       || customers          | BASE TABLE || departments        | BASE TABLE || employees          | BASE TABLE || employees_audit    | BASE TABLE || officeinfo         | VIEW       || offices            | BASE TABLE || offices_bk         | BASE TABLE || offices_usa        | BASE TABLE || orderdetails       | BASE TABLE || orders             | BASE TABLE || organization       | VIEW       || payments           | BASE TABLE || price_logs         | BASE TABLE || productlines       | BASE TABLE || products           | BASE TABLE || saleperorder       | VIEW       || user_change_logs   | BASE TABLE || v_contacts         | VIEW       || vps                | VIEW       |+--------------------+------------+24 rows in set

我们在yiibaidb数据库中创建一个名为view_contacts的视图,其中包括来自employees和customers表的名字,姓氏和电话。

CREATE VIEW view_contacts AS SELECT lastName, firstName, extension as phone FROM employees UNIONSELECT contactFirstName, contactLastName, phone FROM customers;

现在,执行查询SHOW FULL TABLES命令:

mysql> SHOW FULL TABLES;+--------------------+------------+| Tables_in_yiibaidb | Table_type |+--------------------+------------+| aboveavgproducts   | VIEW       || article_tags       | BASE TABLE || bigsalesorder      | VIEW       || contacts           | BASE TABLE || customerorders     | VIEW       || customers          | BASE TABLE || departments        | BASE TABLE || employees          | BASE TABLE || employees_audit    | BASE TABLE || officeinfo         | VIEW       || offices            | BASE TABLE || offices_bk         | BASE TABLE || offices_usa        | BASE TABLE || orderdetails       | BASE TABLE || orders             | BASE TABLE || organization       | VIEW       || payments           | BASE TABLE || price_logs         | BASE TABLE || productlines       | BASE TABLE || products           | BASE TABLE || saleperorder       | VIEW       || user_change_logs   | BASE TABLE || v_contacts         | VIEW       || view_contacts      | VIEW       || vps                | VIEW       |+--------------------+------------+25 rows in set

您可以看到,v_contacts,view_contacts,vps等是视图(VIEW),而其它表则都是基表(BASE TABLE)。

对于具有很多表的数据库,一次显示所有表可能不免直观。

幸运的是,SHOW TABLES命令提供了一个选项,允许使用LIKE运算符或WHERE子句中的表达式对返回的表进行过滤,如下所示:

SHOW TABLES LIKE pattern;SHOW TABLES WHERE expression;

例如,要显示yiibaidb数据库中以字母p开头的所有表,请使用以下语句:

mysql> SHOW TABLES LIKE 'p%';+-------------------------+| Tables_in_yiibaidb (p%) |+-------------------------+| payments                || price_logs              || productlines            || products                |+-------------------------+4 rows in set

或者显示以'es'字符串结尾的表,可使用以下语句:

mysql> SHOW TABLES LIKE '%es';+--------------------------+| Tables_in_yiibaidb (%es) |+--------------------------+| employees                || offices                  || productlines             |+--------------------------+3 rows in set

以下语句说明了如何在SHOW TABLES语句中使用WHERE子句列出yiibai数据库中的所有视图 -

mysql> SHOW FULL TABLES WHERE table_type = 'VIEW';+--------------------+------------+| Tables_in_yiibaidb | Table_type |+--------------------+------------+| aboveavgproducts   | VIEW       || bigsalesorder      | VIEW       || customerorders     | VIEW       || officeinfo         | VIEW       || organization       | VIEW       || saleperorder       | VIEW       || v_contacts         | VIEW       || view_contacts      | VIEW       || vps                | VIEW       |+--------------------+------------+9 rows in set

有时,希望看到非当前使用的数据库中的表。可以使用SHOW TABLES语句的FROM子句来指定要显示表的数据库。

以下示例演示如何显示以'time'开头的表;

mysql> SHOW TABLES FROM mysql LIKE 'time%';+---------------------------+| Tables_in_mysql (time%)   |+---------------------------+| time_zone                 || time_zone_leap_second     || time_zone_name            || time_zone_transition      || time_zone_transition_type |+---------------------------+5 rows in set

以下语句相当于上面的语句,但它使用IN而不是FROM子句,如下所示 -

mysql> SHOW TABLES IN mysql LIKE 'time%';+---------------------------+| Tables_in_mysql (time%)   |+---------------------------+| time_zone                 || time_zone_leap_second     || time_zone_name            || time_zone_transition      || time_zone_transition_type |+---------------------------+5 rows in set

请注意,如果您没有基表或视图的权限,则它不会显示在SHOW TABLES命令的结果集中。

以上是"mysql如何查询数据库有多少表"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

数据 数据库 语句 查询 命令 视图 子句 步骤 内容 服务器 示例 篇文章 切换 服务 客户 客户端 开头 明了 结果 学习 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳市人人互联网科技有限公司 伟宏互联网科技 科技与互联网发展 互联网医疗科技 致聘互联网科技 互联网科技产品 互联网科技项目计划书材料类 湖北码尼互联网科技有限公司电话 互联网5g黑科技有哪些 链环科技传统企业怎么转型互联网 互联网科技和信息 华中科技大学互联网的牛人 众安科技工业互联网合作 上海钢联属于互联网科技股吗 浙南科技城互联网大厦招聘 济南小医互联网科技有限公司招聘 抖集互联网科技技术咨询 广西科技产业互联网是什么 科技发展第三阶段互联网时代 互联网 科技节活动 微视频大赛 中关村互联网科技集团 新华互联网科技学院 互联网科技公司有哪些 互联网金融和金融科技 海南购全球互联网科技 互联网教育科技公司vipkid 21世纪互联网科技成就 富国互联网科技002692 互联网科技手机排行榜 张家口科技产业互联网平台
0