powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Первая строка CLOB
7 сообщений из 7, страница 1 из 1
Первая строка CLOB
    #39382929
norulizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Очень нужна помощь!
Есть одна база к которой есть доступ только на чтение. Из базы нужно выдернуть информацию для отчета. Данный нужны из нескольких таблиц, следовательно есть запрос вида:
SELECT DISTINCT id1, id2, dbms_lob.substr(id3,4000), dbms_lob.substr(id4,4000) FROM MYBASE.TABLE1 T1 JOIN MYBASE.TABLE2 T2 ON T1.id1=T2.id2 JOIN MYBASE.TABLE3 T3 on T1.id2=T2.id3 WHERE 1 = 1 AND parm2 and parm3;


Для sqlplus написан сценарий:

set pagesize 0;
set feedback off;
set serveroutput ON size 32000;
set linesize 32000;
set long 99999999;
set recsep off;
set wrap off;
SET COLSEP ';';
set HEADING off;

spool file.xls

SELECT DISTINCT id1, id2, dbms_lob.substr(id3,4000), dbms_lob.substr(id4,4000) FROM MYBASE.TABLE1 T1 JOIN MYBASE.TABLE2 T2 ON T1.id1=T2.id2 JOIN MYBASE.TABLE3 T3 on T1.id2=T2.id3 WHERE 1 = 1 AND parm2 and parm3;

spool off


Но при выгрузке в exсel весь вывод сбивается в один столбец и бьется по строкам. Это вообще логично, т.к. одно из полей вывода CLOB со знаками переноса внутри. Причем из этого поля нужна только первая строка и получать ее нужно на этапе sql.
Впервые сталкиваюсь с sql поэтому прошу помощи.
...
Рейтинг: 0 / 0
Первая строка CLOB
    #39382932
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
norulizzz,
раз уж научились брать первые 4000 символов, то трудности взять до
авторзнаками переноса внутри не так тяжело
...
Рейтинг: 0 / 0
Первая строка CLOB
    #39383008
norulizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
123йй,

при попытке сделать dbms_lob.substr(id3,chr (10)), вылетает ошибка 01722 (Неверное число)
...
Рейтинг: 0 / 0
Первая строка CLOB
    #39383020
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
norulizzz123йй,

при попытке сделать dbms_lob.substr(id3,chr (10)), вылетает ошибка 01722 (Неверное число)
вот оно
какой вопрос,такой ответ
...
Рейтинг: 0 / 0
Первая строка CLOB
    #39383022
проходил мимо...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
norulizzz,

Вместо chr(10) нужно было просто написать 'хочу до конца строки'.

ЗЫ. Почитать про функцию не пробовали?
...
Рейтинг: 0 / 0
Первая строка CLOB
    #39383815
norulizzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если кому то поможет, реализовал так :
dbms_lob.substr(id3, instrb(id3,chr (10)))

Не знаю на сколько идеологически верно, но моих знаний на большее не хватило, и самое главное работает.
...
Рейтинг: 0 / 0
Первая строка CLOB
    #39383836
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
norulizzzdbms_lob.substr(id3, instrb(id3,chr (10)))
Код: plsql
1.
regexp_substr(id3, '.*')
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Первая строка CLOB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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