Následuje návrh řešení pro specifické OP problém (extrahování 2. slova řetězce), ale je třeba poznamenat, že jak uvádí odpověď mc0e, ve skutečnosti extrakce shod regulárních výrazů není v MySQL přímo podporována. Pokud to opravdu potřebujete, pak máte na výběr v zásadě 1) provést to v následném zpracování na klientovi nebo 2) nainstalovat rozšíření MySQL, které to podporuje.
BenWells to má téměř správně. Zde je mírně upravená verze z jeho kódu:
SUBSTRING(
sentence,
LOCATE(' ', sentence) + CHAR_LENGTH(' '),
LOCATE(' ', sentence,
( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
)
Jako pracovní příklad jsem použil:
SELECT SUBSTRING(
sentence,
LOCATE(' ', sentence) + CHAR_LENGTH(' '),
LOCATE(' ', sentence,
( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
) as string
FROM (SELECT 'THIS IS A TEST' AS sentence) temp
Tím se úspěšně extrahuje slovo IS