【问题标题】:Merging two tables without any join key合并两个没有任何连接键的表
【发布时间】:2014-08-20 11:46:33
【问题描述】:

我目前在尝试合并两个表时遇到了一些困难。

例子:

表_1:

Sylvester
Kim
Charlotte
Jessica
Theodor

表_2:

01-01-2014
02-01-2014
03-01-2014
etc..

table_1 中的每个名称都需要与 table_2 中的每个日期合并。

结果:

Table_3(姓名、日期):

Sylvester, 01-01-2014
Sylvester, 02-01-2014
Sylvester, 03-01-2014
Charlotte, 01-01-2014
Charlotte, 02-01-2014
Charlotte, 03-01-2014
and etc...

我已尝试创建合并语句,但无法使其正常工作。 有没有人知道如何解决这个问题?

谢谢。

【问题讨论】:

    标签: sql oracle merge


    【解决方案1】:

    你想要一个cross join

    select t1.*, t2.*
    from table_1 t1 cross join
         table_2 t2;
    

    如果您真的需要在另一个表中使用这些,请将create table table_3 as 放在select 之前。

    【讨论】:

      【解决方案2】:

      试试

      SELECT * INTO Table_3 FROM Table_1, Table_2
      

      逗号在技术上是一个连接,它可能不适合您的目的,但它会从 Table_1 和 Table_2 中选择每个记录组合并将它们插入到 Table_3 中

      编辑:T-SQL 解决方案不是 Oracle。对此感到抱歉

      【讨论】:

      • INTO 在 Oracle 中有不同的含义。您可以使用它在 PL/SQL 中分配变量。
      • 哎哟。谢谢。我想我已经离开 Oracle 游戏太久了。
      猜你喜欢
      • 2015-03-16
      • 1970-01-01
      • 2021-03-08
      • 2017-01-25
      • 2019-01-28
      • 1970-01-01
      • 1970-01-01
      • 2019-06-24
      • 2012-09-17
      相关资源
      最近更新 更多