【问题标题】:Merge statement join合并语句加入
【发布时间】:2011-11-25 15:43:49
【问题描述】:

MERGE 语句使用哪个连接?如何针对大型表优化我的合并语句,以便它不会花费更多时间来执行。

请帮忙。

【问题讨论】:

  • 它将使用您定义的任何 JOIN - 最好在您定义的源表和目标表的公共列上使用 INNER JOIN
  • 假设我在查询中使用了 join(existing.column1=new.column1)。我将如何提及加入?
  • 我想优化合并语句中的插入和更新语句。
  • 您的 MERGE 语句应该类似于 MERGE (target) USING (source) ON --here comes **your** JOIN condition-- ... - 那么您的问题到底是什么?你已经有一个 MERGE 声明了吗?如果是这样:请问你能发布吗??
  • @marc_s - 即使合并语句具有 inner join,您获得的实际逻辑连接类型也取决于您包含的 WHEN MATCHED 子句。 @akd das。根据您拥有的子句以及您的连接条件和索引是什么,您可以获得任何逻辑连接类型或任何物理连接类型。如前所述,这个问题无法回答。这太笼统了。您不妨问如何优化SELECT 语句。

标签: sql sql-server-2008


【解决方案1】:

试试“UNION”关键字,例如

 Select * from table1
 UNION
 Select * from table2

【讨论】:

    猜你喜欢
    • 2017-03-27
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-21
    • 2014-09-29
    • 2011-07-05
    相关资源
    最近更新 更多