Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Выборка в запросе из CLOB поля / 10 сообщений из 10, страница 1 из 1
02.08.2018, 11:42
    #39682481
azsx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
Есть таблица table_test, в нём есть поле pole_test формата CLOB. В нём хранятся xml большие по объёму данные. Так как я не понимаю как java работает с памятью, мне хочется select'ом выбрать только то, что реально нужно из этого поля. То есть в поле есть запись:
----------------------------
(куча всего)
<n:inn>00000000000</n:inn>
(куча всего)
----------------------------
вопрос.
Скажите, пожалуйста, каким запросом выбрать только "00000000000"?
...
Рейтинг: 0 / 0
02.08.2018, 11:54
    #39682491
Garrick
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
...
Рейтинг: 0 / 0
02.08.2018, 11:55
    #39682492
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
...
Рейтинг: 0 / 0
02.08.2018, 12:47
    #39682525
azsx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
но мне ведь не требуется плагин для разбора xml, мне надо выбрать два параметра из записи. Сделал так
SELECT substr (pole_test, (instr (pole_test, '<n:inn>') + 7), (pole_test, (instr (pole_test, '<n:inn>') + 7) - instr (pole_test, '</n:inn>')) FROM table_test
Почему так не правильно?
...
Рейтинг: 0 / 0
02.08.2018, 12:52
    #39682530
azsx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
Извините
substr (pole_test, (instr (pole_test, '<n:inn>') + 7), (instr (pole_test, '</n:inn>') - instr (pole_test, '<n:inn>') - 7)) FROM table_test
...
Рейтинг: 0 / 0
02.08.2018, 12:58
    #39682533
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
test case с предоставленными исходными данными значительно упрощает дело.
С вероятностью 95% при его подготовке вы сами разберетесь в проблеме.
...
Рейтинг: 0 / 0
02.08.2018, 13:27
    #39682551
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
azsxвыбрать только "00000000000"select '00000000000' from table_test where pole_test like '%<n:inn>00000000000</n:inn>%';
...
Рейтинг: 0 / 0
02.08.2018, 13:55
    #39682577
feagor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
azsx,

А еще можно FBO индекс построить, если нужно еще и быстро всё это делать
...
Рейтинг: 0 / 0
02.08.2018, 16:26
    #39682691
Garrick
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
-2-azsxвыбрать только "00000000000"select '00000000000' from table_test where pole_test like '%<n:inn>00000000000</n:inn>%';
Это сколько же дней он по CLOB'ам так искать будет? :)
...
Рейтинг: 0 / 0
06.08.2018, 08:43
    #39683561
dimyaz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка в запросе из CLOB поля
azsxИзвините
substr (pole_test, (instr (pole_test, '<n:inn>') + 7), (instr (pole_test, '</n:inn>') - instr (pole_test, '<n:inn>') - 7)) FROM table_test

Если не хочешь, чтобы у тебя через некоторое время все не зависло и не сдохло, сделай сразу по человечески.
Читай что такое:

Код: plsql
1.
XMLType + XMLQuery
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Выборка в запросе из CLOB поля / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]