【问题标题】:Using Merge in Oracle SQL在 Oracle SQL 中使用合并
【发布时间】:2015-05-09 11:38:55
【问题描述】:

有什么方法可以在merge 语句中使用join

MERGE INTO TABLE1 T
   USING TABLE2
   ON .....
   WHEN MATCHED THEN .....
   WHEN NOT MATCHED THEN INSERT (X,Y,Z1) VALUES (X,Y,Z1);

X 和 Y 属于 TABLE2,合并没有问题,但我也想在合并到 TABLE1 时从另一个 TABLE3 插入 Z1。

我正在尝试加入 TABLE3,但合并语法中不允许这样做。

有什么办法吗?

【问题讨论】:

  • 尝试使用子查询代替表。

标签: sql oracle merge


【解决方案1】:

USING 子句可以将子查询作为其参数。听起来你想要这样的东西:

MERGE INTO table1 t
USING (
  ... subquery joining TABLE2 and TABLE3 ...
) f
ON f.something = t.something
...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-11
    相关资源
    最近更新 更多