Ce qui suit est une solution proposée pour le spécifique du PO problème (extraction du 2ème mot d'une chaîne), mais il convient de noter que, comme l'indique la réponse de mc0e, l'extraction des correspondances de regex n'est pas prise en charge par défaut dans MySQL. Si vous en avez vraiment besoin, alors vos choix sont essentiellement de 1) le faire en post-traitement sur le client, ou 2) installer une extension MySQL pour le prendre en charge.
BenWells a presque raison. En travaillant à partir de son code, voici une version légèrement ajustée :
SUBSTRING(
sentence,
LOCATE(' ', sentence) + CHAR_LENGTH(' '),
LOCATE(' ', sentence,
( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
)
Comme exemple de travail, j'ai utilisé :
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
Cela extrait avec succès le mot IS