【问题标题】:How to insert data from multi tables to one table in Oracle?Oracle中如何将多张表中的数据插入到一张表中?
【发布时间】:2019-03-25 03:56:59
【问题描述】:

我在插入 3 个表中的数据时遇到了麻烦: A(身份证,姓名),B(身份证,姓名),C(身份证,姓名)。他们有同样的领域。 如何将上面 3 个表中的数据插入到表 D(id、name)中?

【问题讨论】:

    标签: oracle oracle11g sql-insert


    【解决方案1】:

    您可以使用UNIONUNION ALL

    INSERT INTO table_d(id, name)
    SELECT id, name
    FROM table_a
    UNION ALL 
    SELECT id, name
    FROM table_b
    UNION ALL 
    SELECT id, name
    FROM table_c;   
    

    如果要删除 3 个表中的重复行,请将 UNION ALL 更改为 UNION。参考union vs union all的信息

    【讨论】:

    • 您缺少一个用于 table_c 的 UNION (ALL)(并且没有说明何时使用 UNION,以及何时使用 UNION ALL)。
    猜你喜欢
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 2013-12-15
    • 2018-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-05
    相关资源
    最近更新 更多