查询来计算我在 MySQL 中拥有的表的数量

我正在增加我拥有的表的数量,有时我很好奇只是做一个快速的命令行查询来计算我的数据库中的表的数量。这可能吗?如果是,那么查询内容是什么?

209772 次浏览
SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'dbName';

来源

这是我的:

USE databasename;
SHOW TABLES;
SELECT FOUND_ROWS();

如果你想统计所有的数据库加上一个摘要,请尝试这样做:

SELECT IFNULL(table_schema,'Total') "Database",TableCount
FROM (SELECT COUNT(1) TableCount,table_schema
FROM information_schema.tables
WHERE table_schema NOT IN ('information_schema','mysql')
GROUP BY table_schema WITH ROLLUP) A;

下面是一个例子:

mysql> SELECT IFNULL(table_schema,'Total') "Database",TableCount
-> FROM (SELECT COUNT(1) TableCount,table_schema
->       FROM information_schema.tables
->       WHERE table_schema NOT IN ('information_schema','mysql')
->       GROUP BY table_schema WITH ROLLUP) A;
+--------------------+------------+
| Database           | TableCount |
+--------------------+------------+
| performance_schema |         17 |
| Total              |         17 |
+--------------------+------------+
2 rows in set (0.29 sec)

试试看! ! !

希望这有所帮助,并且只返回数据库中的表数

Use database;


SELECT COUNT(*) FROM sys.tables;
SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'dbo' and TABLE_TYPE='BASE TABLE'
SELECT COUNT(*) FROM information_schema.tables

要计算表的数量,只需执行以下操作:

USE your_db_name;    -- set database
SHOW TABLES;         -- tables lists
SELECT FOUND_ROWS(); -- number of tables

有时候简单的事情就能解决问题。

可能有多种方法来计算数据库的表:

SELECT
COUNT(*)
FROM
`information_schema`.`tables`
WHERE
`table_schema` = 'my_database_name'
;
select name, count(*) from DBS, TBLS
where DBS.DB_ID = TBLS.DB_ID
group by NAME into outfile '/tmp/QueryOut1.csv'
fields terminated by ',' lines terminated by '\n';

这将为您提供 mysql 中所有数据库的名称和表计数

SELECT TABLE_SCHEMA,COUNT(*) FROM information_schema.tables group by TABLE_SCHEMA;
SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'database_name';

从命令行:

mysql -uroot -proot  -e "select count(*) from
information_schema.tables where table_schema = 'database_name';"

在上面的例子中,root 是用户名和密码,托管在 localhost 上。

Mysql > 显示表格;

它将显示表的名称,然后显示表的计数。

来源