Oracle - Как написать запрос для возврата имени заголовка столбца с разделителем канала?
Я хочу, чтобы запрос возвращал имя заголовка с разделителем трубы. Я нашел ссылку в Интернете, но не смог получить именно то, что хочу.
Я хочу что-то вроде возврата, не нужно выводить файл, просто результат запроса:
column1 | column2 | колонка3|column4|.......|columnN
Я попробовал это: SELECT /delimited/ from tableName где rownum<1; Запустите как скрипт, используя F5.
"СКП","UPC_DESCRIPTION","ITEM_CODE","DEPT_CODE"
Но результат разделен запятой и имеет кавычки. - Я не хочу этого.
На самом деле у меня так много столбцов, есть ли простой способ / простой запрос вернуть заголовок ВСЕ (с разделителями канала) без ввода каждого из них вручную?
Спасибо за любую помощь!
1 ответ
Вы не можете просто сделать:
select col1 || '|' || col2 || '|' || col3 || '|' || col4 || '|' || col5
from table;
Вы можете произвести свой запрос:
select 'select ' || LISTAGG(column_name , ' || ''|'' || ') within group (order by column_id) || ' from my_table'
from user_tab_columns
where table_name = 'MY_TABLE';
Если вы хотите получить только заголовок для ваших данных, пожалуйста:
select LISTAGG(column_name, '|') within group (order by column_id)
from user_tab_columns
where table_name = 'MY_TABLE';