Я пытаюсь определить ссылочные номера, содержащиеся в строках столбца. Таблица выглядит примерно так:
col1 col2
1 fgREF1234fhjdREF1235hgkjREF1236
2 hREF1237hjdfREF1238djhfhs
Необходимо написать запрос SQL, который идентифицирует 'REF', за которым следуют 4 цифры, и возвращает каждый в своей строке.
Вывод должен выглядеть следующим образом:
col1 ref
1 REF1234
1 REF1235
1 REF1236
2 REF1237
2 REF1238
Я пробовал:
select
case when substr(substr(col2, instr(col2, 'REF'), 7), 1, 1) like 'R'
then substr(col2, instr(col2, 'R'), 7) else null end ref
from table
... но это будет идентифицировать только первое совпадение в строке.
Я использую Oracle SQL, но в идеале решение можно было бы преобразовать в другие варианты SQL.
Любая помощь будет высоко ценится!