Følgende er en foreslået løsning til OP's specifikke problem (udtrække det 2. ord i en streng), men det skal bemærkes, at som mc0e's svar angiver, er faktisk udtrækning af regex-matches ikke understøttet direkte i MySQL. Hvis du virkelig har brug for dette, så er dine valg grundlæggende at 1) gøre det i efterbehandling på klienten eller 2) installere en MySQL-udvidelse for at understøtte det.
BenWells har det næsten rigtigt. Ud fra hans kode er her en lidt tilpasset version:
SUBSTRING(
sentence,
LOCATE(' ', sentence) + CHAR_LENGTH(' '),
LOCATE(' ', sentence,
( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
)
Som et fungerende eksempel brugte jeg:
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
Dette udtrækker ordet IS