2015-03-05 3 views
0

Мои знания о SQL и Oracle не выходят за рамки запросов. Я боюсь, но то, что я хочу сделать, это запустить какой-то скрипт, который будет генерировать несколько отчетов из одного исполнения. У меня есть целая куча кода, и на данный момент я перезапустив это около 30 раз, каждый раз заменяя следующий в предложении WHERE с другим «subject_id»:Как написать сценарий отчета в Oracle

SELECT ... 
FROM ... 
WHERE ... 
AND (v.SUBJECT_ID LIKE 'B%') 
... 

Я думаю, что я должен быть способный запускать какой-то скрипт цикла и выводить все 30 отчетов за один раз ...? Я надеюсь получить какое-то обучение по этому поводу довольно скоро, но любая помощь будет принята с благодарностью!

ответ

1

Предполагая по

каждый раз заменяя следующее в ИНЕКЕ с другим «subject_id»

вы имеете в виду v.subject_id like '<some value>', где различна для каждого цикла вокруг кода, я хотел бы сделать если бы я был вами:

замените v.subject_id like '<some value>' на v.subject_id like '&&subj_id.' (необходимо указать, что это конец имени параметра) и создать его как собственный скрипт t, например. report.sql.

Тогда я создать новый сценарий и сделать:

define subj_id set <some value>; 

@@report.sql 

define subj_id set <some other value>; 

@@report.sql 

... 
+0

Спасибо за это - либо шаг за шагом руководство о том, как создавать сценарии ...? В идеале я ищу для запуска каждого запроса (x30) и сохранения экспорта .xlsx в локальный каталог. –

+0

Я не встречал никаких пошаговых руководств; в основном скрипт - это всего лишь набор операторов sql и pl/sql, а также любые команды sqlplus для воздействия на результат (например, spool to file, off off headers и т. д.). Писать мужество из них не так сложно; получение точной информации, которая вам нужна, может быть несколько сложнее! – Boneist

+0

Я предлагаю вам уйти, и если вы застряли, задайте новый вопрос с подробностями о том, что вы сделали, какие у вас были проблемы и т. Д. Табличные скрипты и примеры данных тоже помогли бы. [Это] (http://www.orafaq.com/wiki/SQL*Plus_FAQ) и [это] (https://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_twelve001.htm) следует помогите вам с командами sqlplus, которые вы можете использовать. – Boneist

Смежные вопросы