Nick wrote: > Or in another word, if a TEXT column has similar meaning with an INTEGER > column in my applications,(such as use userID instead of userName, still the > way that the data works in my head:) ) is it recommended to use INTEGER one > in order to get a less index pages?
Yes; an index on a smaller column needs less space, so it's faster to load from disk. But you should always measure how much difference it actually makes. >> For instance, once SQLite has found the right entry in the index it might >> need to look up that entry in the table to retrieve values which are not >> in the index. > > I understand the execution process you said. And in my opinion, sqlite > should fetch pages when looking up the entry both in the index and then in > the table. But I only found pages with '0x0A' and '0x02' when > getPageNormal() is called during the time running select SQL. Could you give > me any advises to find the code when sqlite fetching the '0x0D' pages? For count(*), the database does not need the actual table rows. You'd have to run a query that reads some other column: SELECT sum(a) FROM t2 WHERE d = xx; Regards, Clemens _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users