Infatti nell'ultima che ho postato si può fare a meno di REGEXP.
Usa questa, è abbastanza veloce:
codice:
SELECT
IF(INSTR(SUBSTRING_INDEX(url, '&q=',-1), '&')=0,
SUBSTRING(url, 3+POSITION('&q=' IN url)),
SUBSTRING(url, 3+POSITION('&q=' IN url), -1+INSTR(SUBSTRING_INDEX(url, '&q=',-1), '&')))
AS valore
FROM tabella WHERE
url LIKE 'http://www.altavista.com/web/results?%' AND
url LIKE '%&q=%'
UNION
SELECT
IF(INSTR(SUBSTRING_INDEX(url, '?q=',-1), '&')=0,
SUBSTRING(url, 3+POSITION('?q=' IN url)),
SUBSTRING(url, 3+POSITION('?q=' IN url), -1+INSTR(SUBSTRING_INDEX(url, '?q=',-1), '&')))
AS valore
FROM tabella WHERE
url LIKE 'http://www.altavista.com/web/results?%' AND
url LIKE '%?q=%'
L'if controlla se per caso il parametro q= è in coda alla querystring.
ciao