假设一个表由oracle数据库中的50列组成,需要选择超过45列,但是任何时候通过编写每个列的名称来选择超过45列的名称是时间浪费,因此需要通过排除选择超过45列oracle数据库中不必要的列,如何解决要求??
答案 0 :(得分:1)
只需编写一个视图,选择您要选择的每一列
create view example as select [your columns] from [your table];
然后只需选择视图:
select * from example;
答案 1 :(得分:0)
您可以将动态SQL与ALL_TAB_COLUMNS
表
SELECT t.table_name,
'SELECT '
|| listagg(t.column_name,' ,') WITHIN GROUP(ORDER BY t.column_name)
|| ' FROM ' || t.table_name as BuiltSQL
FROM ALL_TAB_COLUMNS t
WHERE t.table_name = 'YourTableName'
and t.column_name NOT IN('UnNecessaryCol1','col2',...)
GROUP BY t.table_name
这将生成一个SQL代码供您使用。