in reply to Re: MySQL/Perl LIKE $string question
in thread MySQL/Perl LIKE $string question

As an aside, when using a LIKE clause, there is can be a significant performance difference between   WHERE last_name LIKE 'smith%' and   WHERE last_name LIKE ? The difference depends on when the database does query planning, and on how sophisticated the query planning is. A sophisticated query planner will look at the first fragment, and determine (by noting no initial wildcard) that if last_name is indexed, the index can be used to optimize the query. However, in the second fragment, the planner can't make any assumptions, and will force a linear scan of the table even if last_name is indexed. For a big table, this can clobber performance.

I know it work this way with Oracle, but haven't delved into MySQL to this depth. Perhaps someone with more experience can say whether this would also be an issue with MySQL.