MySQL常用查询Databases和Tables

网友投稿 604 2023-06-15

MySQL常用查询Databases和Tables

MySQL常用查询Databases和Tables

分享一下工作中常见的mysql脚本,此次分享的内容如下:

Databasestables

一、Databases and schemas

列出了 MySQL 实例上的用户数据库(模式):

select schema_name as database_namefrom information_schema.schematawhere schema_name not in('mysql','information_schema', 'performance_schema','sys')order by schema_name

说明:database_name - 数据库(模式)名称。

二、Tables

1. 列出 MySQL 数据库中的表

下面的查询列出了当前或提供的数据库中的表。要列出所有用户数据库中的表

(1) 当前数据库

select table_schema as database_name, table_namefrom information_schema.tableswhere table_type = 'BASE TABLE' and table_schema = database() order by database_name, table_name;

说明:

table_schema - 数据库(模式)名称table_name - 表名

(2) 指定数据库

select table_schema as database_name, table_namefrom information_schema.tableswhere table_type = 'BASE TABLE' and table_schema = 'database_name' -- enter your database name hereorder by database_name, table_name;

说明:

table_schema - 数据库(模式)名称table_name - 表名

2. 列出 MySQL 中所有数据库的表

下面的查询列出了所有用户数据库中的所有表:

select table_schema as database_name, table_namefrom information_schema.tableswhere table_type = 'BASE TABLE' and table_schema not in ('information_schema','mysql', 'performance_schema','sys')order by database_name, table_name;

说明:

table_schema - 数据库(模式)名称table_name - 表名

3. 列出 MySQL 数据库中的 MyISAM 表

select table_schema as database_name, table_namefrom information_schema.tables tabwhere engine = 'MyISAM' and table_type = 'BASE TABLE' and table_schema not in ('information_schema', 'sys', 'performance_schema','mysql') -- and table_schema = 'your database name' order by table_schema, table_name;

说明:

database_name - 数据库(模式)名称table_name - 表名

4. 列出 MySQL 数据库中的 InnoDB 表

select table_schema as database_name, table_namefrom information_schema.tables tabwhere engine = 'InnoDB' and table_type = 'BASE TABLE' and table_schema not in ('information_schema', 'sys', 'performance_schema','mysql') -- and table_schema = 'your database name'order by table_schema, table_name;

说明:

database_name - 数据库(模式)名称table_name - 表名

5. 识别 MySQL 数据库中的表存储引擎(模式)

select table_schema as database_name, table_name, enginefrom information_schema.tableswhere table_type = 'BASE TABLE' and table_schema not in ('information_schema','mysql', 'performance_schema','sys') -- and table_schema = 'your database name'order by table_schema, table_name;

说明:

(1)table_schema - 数据库(模式)名称

(2)table_name - 表名

(3)engine- 表存储引擎。可能的值:

CSVInnoDB记忆MyISAM档案黑洞MRG_MyISAM联合的

6. 在 MySQL 数据库中查找最近创建的表

select table_schema as database_name, table_name, create_timefrom information_schema.tableswhere create_time > adddate(current_date,INTERVAL -60 DAY) and table_schema not in('information_schema', 'mysql', 'performance_schema','sys') and table_type ='BASE TABLE' -- and table_schema = 'your database name' order by create_time desc, table_schema;

MySQL 数据库中最近 60 天内创建的所有表,按表的创建日期(降序)和数据库名称排序

说明:

database_name - 表所有者,模式名称table_name - 表名create_time - 表的创建日期

7. 在 MySQL 数据库中查找最近修改的表

select table_schema as database_name, table_name, update_timefrom information_schema.tables tabwhere update_time > (current_timestamp() - interval 30 day) and table_type = 'BASE TABLE' and table_schema not in ('information_schema', 'sys', 'performance_schema','mysql') -- and table_schema = 'your database name' order by update_time desc;

所有数据库(模式)中最近 30 天内最后修改的所有表,按更新时间降序排列

说明:

database_name - 数据库(模式)名称table_name - 表名update_time - 表的最后更新时间(UPDATE、INSERT 或 DELETE 操作或 MVCC 的 COMMIT)

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:国产操作系统和国产数据库管理系统有哪些?国产数据库发展现状分析
下一篇:从输入 SQL 到返回数据,到底发生了什么?
相关文章