Я пытаюсь написать запрос в Oracle SQL для доступа к определенной подстроке в поле CLOB.
Чтобы использовать функцию SUBSTR, мне нужно найти начальную точку в CLOB, используя функцию INSTR.
CLOB содержит данные X12, разделенные шестнадцатеричными символами.
Чтобы найти начальное смещение для моей подстроки, я хотел бы сделать что-то вроде этого ...
INSTR (my_clob, '\ 0x1CGE \ 0x1D', 1, 1)
.. где вторым параметром является мой «шаблон», представляющий собой шестнадцатеричный 1C, за которым следуют буквы G и E, а затем шестнадцатеричный 1D.
Я перепробовал все, что смог найти через Google, но пока ничего не получалось. Либо он не работает с неверным синтаксисом, либо вообще ничего не возвращает.
Для DBMS_LOB.INSTR () шаблон не совпадает с шаблоном, используемым для LIKE. Похоже, что он будет принимать только строку символов, а не выражение соответствия шаблону, хотя я не уверен на 100%, что он примет.
Есть идеи?