Oracle - 如何将查询写入 return 列 header 名称并用竖线分隔?

Oracle - How to write Query to return column header name with pipe delimited?

我想查询 return header 名称,用竖线分隔。我在网上找到了一些参考资料,但找不到我想要的。

我想要这样的东西return,不需要输出文件,只需要一个查询结果:

第 1 列|第 2 列|第 3 列|第 4 列|......|第 N 列

我试过这个:SELECT /delimited/ from tableName where rownum<1; 运行 作为使用 F5 的脚本。

"UPC","UPC_DESCRIPTION","ITEM_CODE","DEPT_CODE"

但结果以逗号分隔并包含引号。 --我不要。

事实上我有这么多列,是否有一个简单的 way/simple 查询 return ALL header(竖线分隔)而无需手动输入每个列?

感谢您的帮助!!

你就不能这样做吗:

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';

如果您只想获得 header 数据,请执行以下操作:

select LISTAGG(column_name, '|') within group (order by column_id)
      from user_tab_columns 
      where table_name = 'MY_TABLE';