【问题标题】:How to join table without ON如何在没有 ON 的情况下加入表
【发布时间】:2018-04-11 02:58:50
【问题描述】:

如果我们有两个或多个表没有相同的列。

表 1

Col1 | Col2
1    |   2
3    |   4

表 2

Col3 | Col4
 5   |   6
 7   |   8

我们想将这两个表合并并保存到一个新表中

新表

Col1 | Col2 | Col3 | Col4
 1   |   2  |   5  |   6
 3   |   4  |   7  |   8

我不知道我必须使用什么。如果使用连接,它必须有相同的表来配对,但这没有相同的列

注意:我正在使用 SQL SERVER

【问题讨论】:

    标签: sql sql-server select join merge


    【解决方案1】:

    您可以使用row_number 窗口函数创建一个假列来加入:

    SELECT co1l, col2, col3, col4
    FROM   (SELECT col1, col2, ROW_NUMBER() OVER (ORDER BY col1, col2) AS rn
            FROM   table1) t1
    JOIN   (SELECT col3, col4, ROW_NUMBER() OVER (ORDER BY col3, col4) AS rn
            FROM   table2) t2 ON t1.rn = t2.rn
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-12
      • 2013-05-04
      • 1970-01-01
      • 2012-07-09
      相关资源
      最近更新 更多