1
置換機能を使用して更新を実行するクエリがあります。例:SQL Server - 一度に多くのレコードを置換機能で一度に更新する
Update my_table set mycolumn=replace(my_column,@OldServer,@NewServer)
私が達成しようとしているのは、一度に多くの行を更新しようとしています。一度に2つの行を実行したいとしましょう。ここに私が試したことがあります
use mydb
DECLARE @OldServer1 varchar(255)
DECLARE @OldServer2 varchar(255)
DECLARE @NewServer1 varchar(255)
DECLARE @NewServer1 varchar(255)
--Edit these values
SET @OldServer = 'abc'
SET @NewServer = 'ghi'
print 'My Table'
set rowcount 2
update my_table
set my_column=replace(my_column, @OldServer, @NewServer)
while @@rowcount>0
Begin
Set Rowcount 2
update my_table
set my_column=replace(my_column, @OldServer, @NewServer)
END
Set Rowcount 0
何が起こるかは、テーブルが2つの行だけによって更新され、何度も何度もループすることです。私は交換がすべてを想定していると思っています。私もトップカウントを試して、それは同じことをやった。どのように私の目標を達成することができますか?
二 'update' – Lamak
@LamakでNewServer' @ my_columnは<>取り替えるので、私はそれよりも多くのテキストがあることを前提とし...' NOT LIKE'がええ@JohnHC – JohnHC
方が良いだろう使用WHERE '追加あなたは正しいですが、 'update'に条件を追加して、すでに更新された行をフィルターに掛けるという考え方でした。 – Lamak