J'ai un t1 table et deux index:Comment optimiser un index SQLite?
create index if not exists timeindex on t1(time, "Bytes Received")
create index if not exists filenameindex on t1(filename)
La requête suivante exécute assez vite:
select "Bytes Received" from t1 where time>="11:19:31.18" and time <= "11:19:36.18"
Mais quand j'ajoute une condition supplémentaire à l'instruction WHERE la requête ralentit énormément
select "Bytes Received"
from t1
where time>="11:19:31.18" and time <= "11:19:36.18"
and filename = "SE12.log"
J'ai essayé de créer un nouvel index t1(time, "Bytes Received", filename)
mais la vitesse d'exécution n'a pas changé.
Comment dois-je modifier les index dans le tableau pour accélérer la requête?
Merci, Benoit! Que se passerait-il si j'incluais une autre condition, par ex. "et ms = 'ms1'"? Dois-je ajouter "ms" à l'index t1 (nom de fichier ASC, heure ASC, ms ASC)? – smirnoffs
Peut-être que vous devriez lire l'ensemble [chose] (http://use-the-index-luke.com/sql/preface) ici et aussi la section ["ordre des colonnes compte"] (http: //www.itbully. com/articles/sql-indexing-et-performance-part-4-design-considerations) là .. – Benoit