У меня 14 одинаковых полей, и я ищу строку «А» в каждом из них.Я хотел бы после этого заказа по полю "position"
-- some set in order to remove a lot of useless text
def col='col01'
select '&col' "Fieldname",
&col "value",
position
from oneTable
where &col like '%A%'
/
-- then for the second field, I only have to type two lines
def col='col02'
/
...
def col='col14'
/
Запишите все поля, которые содержат 'A'.Проблема в том, что эти поля не упорядочены по позиции.
Если я использую UNION между таблицами, я не могу использовать переменные подстановки (& col), и мне нужно написать bash в unix, чтобы сделатьзамена обратно в кш.Проблема, конечно, в том, что код базы данных должен быть жестко запрограммирован в этом сценарии (соединение не является простым делом).
Если я использую REFCURSOR с OPEN, я не могу сгруппировать наборы результатов вместе.У меня есть только одна просьба, и я не могу сделать СОЮЗ тогда.(вывести refcursor1 union refcursor2; вывести refcursor1 + refcursor2 вызвать исключение, выбрать * из refcursor1 union select * из refcursor2, также не работает).
Как объединить результаты в один большой "REFCURSOR"?Или использовать объединение двух разных прогонов ('/') моего запроса, что-то вроде удержания запроса при наборе нового определения переменных?
Спасибо за любой совет.