Нечисто на ВСЕХ, но если вам это нужно в SQL, вы можете использовать:
Используйте
SUBSTRING ( value_expression , start_expression , length_expression )
и
LOCATE( string1, string2 [, start] )
вместе:
SUBSTRING(INPUT,
((SELECT LOCATE( 'MID]: ', INPUT ))+6),
((SELECT LOCATE( '[Name]', INPUT )) - ((SELECT LOCATE( 'MID]: ', INPUT ))+6))
в зависимости от того, где происходит?Если это пакетный процесс, я бы экспортировал эти поля с идентификатором, написал бы perl one liner, который извлекает их, а затем загрузил их обратно в базу данных.это было бы намного быстрее, чем использование этих функций.
если это событие экрана, тогда я предлагаю разбить их на 3 столбца, это фактически сэкономит ваше пространство.