我有一个简单的查询:
select count(*) from table
我可以通过以下方式加速MySQL:
select count(id) from table
这在速度方面有什么不同吗?
最诚挚的问候,
答案 0 :(得分:1)
如果id
是您的主键,则不会。 *
只会映射到您的主键。 count(id)
= count(*)
答案 1 :(得分:1)
您可以尝试从information_schema
获取计数select TABLE_ROWS from information_schema.tables
where TABLE_SCHEMA = '$db' and TABLE_NAME = '$tbl';
答案 2 :(得分:0)
如果id
是你的主键,那么不会,因为MySql无论如何都会使用封面下的主键。如果id不是主键,那么它实际上可能会使查询稍慢。
答案 3 :(得分:0)
如果id为“not null”,则不会产生任何差异。
如果id可以为空,那么它是一个不同的查询,并且不会(总是)产生相同的结果。