Oracle 从具有多行和多列的 Dual 中选择

Jer*_*emy 4 oracle dual-table

我需要加入从我的程序中动态检索的动态数字列表。行数不是固定的,使用的数字也不是固定的。

我没有找到比以下更好的方法来实现这一点(就我而言,临时表没有帮助):

select 111 as col1, 322 as col2 from dual
union all
select 3 as col1, 14 as col2 from dual
union all
select 56 as col1, 676 as col2 from dual;
Run Code Online (Sandbox Code Playgroud)

有一个更好的方法吗?我看到有一个 connect by 语句可以返回多行,但我没有看到执行多行和多列的方法。

小智 6

您可以使用解码并按级别连接:

select decode(rownum, 1, 111, 2, 3, 3, 56) as col1,
       decode(rownum, 1, 322, 2, 14, 3, 676) as col2
  from dual
connect by level <= 3;
Run Code Online (Sandbox Code Playgroud)