Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想问一下,用merge代替insert语句有什么坏处?如果我需要添加和更新数据,为什么要为每个数据创建 2 个 SP?为什么我不应该只使用一个 SPMERGE呢?
MERGE
只要您在每次 SP 调用中只合并 1 行,不要忘记将 TOP(1) 子句放在“任何地方”,MERGE 就可以了。
MERGE TOP(1) ... USING ... SELECT TOP(1) ...
否则,在某些情况下,您必须非常小心参数嗅探如何导致您的 MERGE 执行得非常糟糕。
当您有少量数据时,合并可以正常工作,但对于大数据,它会导致性能问题。所以最好创建两个单独的SP。