gpt4 book ai didi

sql - 同步表 - UPDATE INSERT DELETE 的顺序重要吗?

转载 作者:行者123 更新时间:2023-12-02 18:46:09 24 4
gpt4 key购买 nike

我需要每天在 2 个数据库之间同步表,源是 MSSQL 2008,目标是 MSSQL 2005。如果我使用 UPDATE、INSERT 和 DELETE 语句(即,更新已更改的行、插入新行、不再删除行)目前),如果我先执行 DELETE 语句,性能会有所提高吗?即,UPDATE 语句不会查看不需要更新的行,因为它们将被删除。

这是我需要考虑的其他一些事情。表有1-300万+行,由于交易量和业务需求,源DB需要保持在线,并且查询需要尽可能高效。该作业将每天在目标数据库上的 SQL Server 代理作业中运行。最重要的是,我是一个数据库菜鸟!

感谢 StackOverflow 社区,你们太棒了!

最佳答案

我想说,首先您要删除,然后更新,然后插入,这样您就不必更新行,这将无论如何都会被删除,并且您不会更新刚刚插入的行。

但实际上,你见过 SQL Server merge句法?它可以为您节省大量代码。

更新我还没有检查MERGE语句针对INSERT/UPDATE/DELETE的性能,这里是相关的link Aaron Bertrand 提供了更多详细信息。

关于sql - 同步表 - UPDATE INSERT DELETE 的顺序重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19144458/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com