循环遍历表列列表,并对它们应用查询

时间:2013-12-08 22:59:19

标签: sql oracle

我们的表mytable,包含列:id,value,description ....

现在我想将这个sql查询应用于每一列:

select distinct [column] from mytable; 

有办法做到这一点吗?

NB。我想提供循环的列列表,而不是循环遍历表中的每一列。

1 个答案:

答案 0 :(得分:0)

declare
  l_tab_name varchar2(32) := 'MY_TABLE';
begin
  for c1 in (select t.column_name from user_tab_columns t where t.table_name = l_tab_name)
    loop
      execute immediate 'select distinct ' || c1.column_name || ' from ' || l_tab_name;
    end loop;
end;