如何在SQL中一起显示两列?

时间:2019-03-01 16:19:23

标签: sql sqlite

我有2个查询以以下形式返回数据:

查询1:

column 1
a
b
c

查询2:

column 2
d
e

如何结合这两个查询以获取输出:

column 1 column 2
a        d
b        e
c

列中的数据顺序无关紧要。 可能有联接吗?

谢谢

2 个答案:

答案 0 :(得分:1)

一个可能的解决方案是使用row_number()选择两个列,并通过row_number将它们连接起来。必须知道要从具有较高行数的表中首先选择。示例:

select
    col_1,
    col_2
from (
    select
        a.col_1,
        row_number() over () rn
    from a
) s1
FULL OUTER JOIN (
    select
        b.col_2,
        row_number() over () rn
    from b
    ) s2 on s1.rn = s2.rn

答案 1 :(得分:1)

使用row_number()

  select t1.col1,t2.col2 from 
    (
    select *,row_number() over(order by col1) rn from query1
    ) t1 full outer join
    (
    select *,row_number() over(order by col2) rn from query2
    ) t2 on t1.rn=t2.rn

对于n,m行使用完全外部联接