如何将两个或多个表合并为一个表,其中包含所有表的所有列名称



如何将两个或多个表合并为一个表,其中包含所有表的所有列名这是表1

这是表2

我可以得到这样的新桌子吗

要以这种方式连接表,您必须有额外的列来连接,其中一种可能性是使用 ROW_NUMBER()

select T1.[date] [Table1_date],
       T1.[als] [Table1_als],
       T1.[zxc] [Table1_zxc],
       T2.[date] [Table2_date],
       T2.[bls] [Table2_bls],
       T2.[zxc] [Table2_zxc]
from (
    select row_number() over (order by [date]) [rn],[date],[als],[zxc] from Table1
) [T1] left /*right - depends which table has more rows*/ join (
    select row_number() over (order by [date]) [rn],[date],[bls],[zxc] from Table2
) [T2] on T1.[rn] = T2.[rn]

为了联接多个表 (>2(,查询中出现的第一个表应该是记录量最大的表。然后,您可以将一系列left join与其余表一起使用,连接由 row_number() 生成的列。

相关内容

  • 没有找到相关文章

最新更新