Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Extraindo texto entre substrings no MySQL


Supondo que sejam seus dados com o alemão sempre antes do inglês, então:
select substring_index(substring_index(col, '[:de]', -1), '[:en]', 1)

Se este não for o caso, você pode testar diferentes possibilidades:
select (case when col like '%[:de]%[%:en]%'
             then substring_index(substring_index(col, '[:de]', -1), '[:en]', 1)
             when col like '%[:de]%[%:]%'
             then substring_index(substring_index(col, '[:de]', -1), '[:]', 1)
             else substring_index(col, '[:de]', -1)
       end)