Gre*_*osz 223
SELECT COUNT(*) FROM fooTable;
Run Code Online (Sandbox Code Playgroud)
将计算表中的行数.
请参阅参考手册.
Nic*_*ick 63
因为没有人提到它:
show table status;
Run Code Online (Sandbox Code Playgroud)
列出所有表以及一些其他信息,包括每个表的估计行.这是phpMyAdmin用于其数据库页面的内容.
这个信息可以在MySQL 4中找到,可能也在MySQL 3.23中 - 很久以前的信息模式数据库.
UPDATE
因为有投票,我想澄清所显示的数字仅针对InnoDB和TokuDB进行估算,对于MyISAM和Aria(Maria)存储引擎来说绝对正确.
这也是查看MySQL行数的最快方法,因为查询类似:
select count(*) from table;
Run Code Online (Sandbox Code Playgroud)
进行全表扫描可能是非常昂贵的操作,在大型高负载服务器上可能需要数小时.它还会增加磁盘I/O.
相同的操作可能会阻止表进行插入和更新 - 这只发生在异国情调的存储引擎上.
InnoDB和TokuDB可以使用表锁,但需要全表扫描.
San*_*udu 32
我们有另一种方法可以在不在该表上运行select查询的情况下找出表中的行数.
每个MySQL实例都有information_schema数据库.如果运行以下查询,它将提供有关该表的完整详细信息,包括该表中的大致行数.
select * from information_schema.TABLES where table_name = 'table_name'\G
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
266510 次 |
| 最近记录: |