首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySQL中获取表的行数?

问在MySQL中获取表的行数?
EN

Stack Overflow用户
提问于 2009-06-19 14:41:09
回答 2查看 22.7K关注 0票数 7

谁能告诉我,在MySQL中,哪种方法更适合用来计算表的行数:是这样做更好

代码语言:javascript
复制
SELECT COUNT(*) FROM TABLE_NAME

或者在INFORMATION_SCHEMA的表TABLE中查找行数

在计算页面的分页计数时,这会是一个频繁的操作吗?

我应该补充的是,表格最多只能有几千行。

谢谢

马丁·奥谢。

EN

回答 2

Stack Overflow用户

发布于 2009-06-19 14:43:50

在MyISAM中,此查询如下:

代码语言:javascript
复制
SELECT  COUNT(*)
FROM    TABLE_NAME

是即时的,因为它保存在表元数据中,所以发出这个查询几乎是免费的,并且总是得到正确的结果。

在InnoDB中,此查询将逐个计算行,这可能需要一些时间。

因此,如果您不需要COUNT(*)的确切值,您可以查询INFORMATION_SCHEMA。

票数 18
EN

Stack Overflow用户

发布于 2013-06-07 11:13:11

如果你觉得COUNT(*)太慢,我也会考虑使用SQL_CALC_FOUND_ROWS和SELECT FOUND_ROWS()。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1018336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档