> Excuse me? Somebody suggested a PHP loop to solve a query problem and you are saying that REGEXP should not be used? > MySQL caches queries and 100 SELECT with a REGEXP will cost zero after the first one if nothing changed inside the table. Even if the REGEXP has to change with every query? Performance aside, I think REGEXP() could be used here, but not in the way you've suggested. As the OP has described his table, your regex ("^[a-zA-Z0-9]+$") won't match any rows, because all of his product IDs have non-alphanumeric characters in them. Suppose this table: pk | prod_id 1 | 07-ABCD-98 2 | 98-ZCXQ-21 And now suppose the OP's scenario, where a user tries to search on product id, but enters "07ABCD98". If the aim is to use REGEXP() to return row 1, I suppose you could intersperse the search string with ".?" sequences and end up with this query: SELECT * FROM table WHERE prod_id REGEXP '^0.?7.?A.?B.?C.?D.?9.?8$' I think just stripping the alphanumeric characters would end up being more flexible, though. -Ben -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php