我需要从单个SQL查询到双表获得如下输出。怎么做?

时间:2014-11-10 10:12:39

标签: sql oracle

示例:我的查询输出应该如下所示

1   L   R

--  --  --

1   1   1 
1   1   2 
1   1   3 
1   2   1 
1   2   2 
1   2   3  
1   3   1 
1   3   2 
1   3   3 

1 个答案:

答案 0 :(得分:4)

一旦你意识到你正在尝试做的是{1, 2, 3}与自己(两次)的笛卡尔积,那就不是很难了。

类似的东西:

with nums as (
    select rownum num from dual connect by level <= 2
)   
select 1, a.num as l, b.num as r
from nums a, nums b;

现在你所要做的就是将它扩展为三个值,而不是两个。