我正在对表中的一行进行 MS SQL Server 更新,这非常简单。我正在用另外 4 件东西替换大约 4 件东西。
update Table set Column1 = 'something new' where Column1 = 'something old';
update Table set Column1 = 'something new 2' where Column1 = 'something old 2';
update Table set Column1 = 'something new 3' where Column1 = 'something old 3';
update Table set Column1 = 'something new 4' where Column1 = 'something old 4';
Run Code Online (Sandbox Code Playgroud)
这就是全部内容了。但我的问题是,这是一个在生产中运行的包含大量记录的表,但在运行更新之前确切的数量是未知的。有一个时间戳列。首先更新最新的可能更重要。
但我的问题可能是一个更实际的问题。
最好按时间戳对其进行分区并让它手动运行,还是有更好的方法让它运行?我还可以按每个更新语句来划分工作。
或者有什么方法可以将这样的东西放入脚本本身吗?
我尝试查看查询计划,但它没有告诉我拆分查询的最佳方法。
sql sql-server optimization query-optimization sql-server-2014