SQLite Forum

MIN()/MAX() performance thought
Login
Here's a concrete example:

CREATE TABLE foo (a TEXT);
CREATE INDEX foo_a ON foo (a);
INSERT INTO foo (a) VALUES ('1234');
INSERT INTO foo (a) VALUES ('2345');
INSERT INTO foo (a) VALUES ('3456');
EXPLAIN QUERY PLAN SELECT MIN(a), MAX(a) FROM foo;
EXPLAIN QUERY PLAN SELECT MIN(a) FROM foo;
EXPLAIN QUERY PLAN SELECT MAX(a) FROM foo;

When I run this with the command-line shell on an initially nonexistent database
(as in "shell foo.db < foo.sql"), I get

QUERY PLAN
`--SCAN foo
QUERY PLAN
`--SEARCH foo USING COVERING INDEX foo_a
QUERY PLAN
`--SEARCH foo USING COVERING INDEX foo_a