Toad for Oracle 12:
我想从一个表中自动生成一个列列表——这样我就可以快速编写一个包含表列子集的查询。
在 Toad 中,我可以通过以下方式执行此操作:
结果:
一个列列表被复制到剪贴板。我可以将列名粘贴到编辑器窗口中并编写我的查询。
问题:
Toad 似乎以字母顺序生成列列表。我更愿意按照列在表格中出现的顺序而不是字母顺序来处理它们。
Toad 中是否有一种方法可以使用原始表中的列顺序快速生成表列列表?
答案 0 :(得分:2)
跳过 TOAD UI 并使用下面的查询。如果需要,我在末尾添加了一个逗号。
select column_name ||','
from user_tab_columns
where table_name = '<yourtable>'
order by column_id
花一些时间阅读有关 Oracle Data Dictionary 的信息。当您需要获取有关表、视图等 oracle 对象的元数据时,这非常有用。
答案 1 :(得分:1)
@OldProgrammer 答案的修改版本:
就我而言,作为非 dba,我必须使用 all_tab_columns
(并指定表所有者),因为 user_tab_columns
没有为我返回任何记录。
select
column_name ||','
from
all_tab_columns
where
owner = 'MAXIMO'
and table_name = 'PO'
order by
column_id