mysql - 如何在不使用 count(*) 查询的情况下获取表 MySQL 版本 4 中的行数?

标签 mysql

我知道如何在 MySQL 5 及更高版本中获取表中的行数。

MySQL 5

从 table_name = 'tableName' 的表中选择 table_rows;

我想知道如何在 MySQL 4 中获得它,因为在大表中 count(*) 查询需要 4 到 5 分钟。

最佳答案

SELECT COUNT(*) 告诉数据库引擎仍然迭代各个字段或每条记录。由于您只关心原始行数,您可以尝试@dj2 的建议并执行

SELECT COUNT(1) FROM <TableName>

但我想知道通过查询聚簇索引依靠主键是否能获得更好的性能。

SELECT COUNT(<PrimaryKey>) FROM <TableName>

关于mysql - 如何在不使用 count(*) 查询的情况下获取表 MySQL 版本 4 中的行数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8607970/

相关文章:

php - 当用户在选择字段中选择新选项时,如何运行 mysql 查询?

MySQL选择不同的记录

php - 无法以注册用户身份登录(php 和 mysql)

PHP - 尝试输入到 MYSQL 表中

mysql - 如何将 MS Access 数据库更改为 MySql 数据库或至少快速移动数据?

javascript - 无法在mysql中使用ajax查看信息

mysql 在 where 子句中使用用户定义的变量

mysql - 在 mySQL 中取平均值

php - 从 mysql 表中的每一行中删除重复单词的最佳方法

php - UTF-8贯穿始终