← Back to team overview

maria-developers team mailing list archive

Re: Optimization about count(*) of mysql 5.1.38

 

Hi, Lichao!

On Jan 10, Lichao Xie wrote:
> hi all:
> I have a question about the optimization of count(*) in a range.
> Sql for mysql like:select count(*) from t where id > 10 and id < 1000000;
> In table t, there is an B-tree index on id field, this sql will read
> hundreds of thousands of records from the storage engine, that is a
> time-consuming operation.
> I am developing a storage engine, I want to know, is there a good
> method to caculate the records in a range, rather than read all
> records or keys in the range?

Yes, see how MyISAM does it - it's pretty straightforward, and only
requires two index lookups.

Regards,
Sergei



References