代码之家  ›  专栏  ›  技术社区  ›  Kevin Ross

合并与追加

  •  10
  • Kevin Ross  · 技术社区  · 14 年前

    我有一个正在用SQL Server后端编写的应用程序。最常用的部分之一是,用户在其中选择问题的答案,然后激发存储过程,该存储过程将查看是否已给出答案,是否执行了更新,是否执行了插入操作。

    这很好,但是现在我们已经升级到了SQL Server 2008 Express,我想知道重写这个SP以使用新的merge命令是否更好/更快/更高效。

    有人知道这是否比选择后插入或更新更快?

    1 回复  |  直到 12 年前
        1
  •  5
  •   TomTom    14 年前

    不值得这么做。可能可行,但它不会给你任何明显的东西。

    合并的目标尤其是数据仓库,在那里查找要插入/更新的内容是比较棘手的部分。它允许所有操作(插入、更新)通过一组合并完成,而每个条件对应一组合并。这对你的案件没有什么实际意义。

    我有一个数据库,在那里我将300-500万行上传到一个3亿行的表中,合并使我的性能提高了50%(一个表扫描,而不是两个表扫描)。