>假设一个表在oracle数据库中由50列组成,需要选择超过45列,但是任何时候通过写每个单独的列名称来选择超过45列都是浪费时间,那么需要通过排除oracle数据库中不必要的列来选择超过45列,如何解决需求??
只需编写一个视图,该视图选择您要选择的每一列
create view example as select [your columns] from [your table];
然后只需选择视图:
select * from example;
您可以将动态 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 代码供您使用。