Hello.
I'm unable to comment your decision about making a separate table and how your data will be normalized after it. But, in my opinion, if you're going to use only one letter for WHERE condition your index will have a low cardinality (number of unique values) and optimizer might prefer a full table scan. And indexes won't work with your WHERE condition because you're using function from a column in expression, not a column directly. Changing it to ' LIKE {letter}%' probably can solve this. In your case having index only on first character in the string makes sense for me. "M.E. Koch" <[EMAIL PROTECTED]> wrote: > Hello dear all-mighty list :) > > I do run mysql in 4.0.24 and have the following very slow query. > > select tbl3.colname from tbl > .. (some left joins) > where > left(colname,1)="{letter}" > > the tbl.col has no index nore will it ever get one because auf > the tbl structre. (this would make no sense becaus only 8tsd.) > rows in the table total 82tsd rows have to get selected like > this. > > As you might guess the query is much too slow. > > Now I have the chance (and time) to do the following. > > Doing a seperate table for this on col like > > +--------+-----------------+ > | id | colnames | > +--------+-----------------+ > > how would i have to index it? I think colnames should get > a fulltext-field but how would it beccorect? Just one letter > or do the whole field. > colnames type = text (varchar might be ok with 255 chars). > > What would you suggest? > > ============== > the other thing is that I would like to update to 4.1.x on > my debian sarge. Has anybody done this yet? > > do I have to just: apg-get remove mysql ? > and apg-get install mysql-4.1 > > wich packages are needed.. will there be much mor performance? > > > Bon Vibes and Thank you > > mathias > > > > > > > > > > > > > > > -- For technical support contracts, goto https://order.mysql.com/?ref=ensita This email is sponsored by Ensita.NET http://www.ensita.net/ __ ___ ___ ____ __ / |/ /_ __/ __/ __ \/ / Gleb Paharenko / /|_/ / // /\ \/ /_/ / /__ [EMAIL PROTECTED] /_/ /_/\_, /___/\___\_\___/ MySQL AB / Ensita.NET <___/ www.mysql.com -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]