У меня есть строки вроде
ОТКРЫТЫЕ СИСТЕМЫ SUB GR (GM / BTIB (1111) / BTITDBL (2222) / BTVY (4444) / ACSVTYSAG)
в моей базе данных под моей колонкой ГРУПП.
Что я хочу сделать, это извлечь 2222 из этой строки. Код, который я использую, выглядит следующим образом.
SELECT
SUBSTRING(GROUPS, CHARINDEX('(',GROUPS, CHARINDEX('(',GROUPS, CHARINDEX('(',GROUPS,0)+1)+1)+1, 4 ) AS GroupNo
FROM MY_TABLE
WHERE
ISNUMERIC(SUBSTRING(GROUPS, CHARINDEX('(',GROUPS, CHARINDEX('(',GROUPS, CHARINDEX('(',GROUPS,0)+1)+1)+1, 4 )) = 1
Мне нужно закрепить приведенный выше код, либо изменив способ подстроки, который я использую, либо изменив некоторую логику. Можете ли вы сказать мне, что можно улучшить в моем коде?