webForumDet fria alternativet

sql-sats - 20 sekunder?

3 svar · 223 visningar · startad av udden

uddenMedlem sedan mars 200174 inlägg
#1

denna sats tar 20 sek och letar bland ca 70000 poster

strSQL = "SELECT intId, art1, art2, art3, art4, art5 FROM Artikel " &_
" WHERE art1 LIKE '%" & strSearch & "%' " &_
" OR art2 LIKE '%" & strSearch & "%' " &_
" OR art3 LIKE '%" & strSearch & "%' " &_
" ORDER BY artname ASC"

är det något fel på den, ineffektiv eller nått, eller bör man t.ex införa full-text index i databasen? (art2 och art3 innehåller ca 5-10 ord per post)

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Eftersom du använder like på det sättet så kommer du aldrig att kunna utnyttja index. Det blir alltid en sekventiell genomläsning och sortering. Det kan nog vara värt att testa full-text index.

uddenMedlem sedan mars 200174 inlägg
#3

okej.

när du säger "använder like på det sättet" - menar du då att det finns bättre sätt att genomföra en sådan här sökning?

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Nej, inte utan full text index.

119 ms totalt · 3 externa anrop · v20260731065814-full.a4c710cd
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
117 ms — hämta tråd, inlägg och bilagor (db)