テーブルに FileName という名前の列があり、ディレクトリを保存したことを認識していません。たとえば、値は \test-srv-1\Uploads\Test.jpg です。ディレクトリを削除する更新ステートメントを実行したいTest.jpg をそのままにしておきます。更新する行が 1000 行あります。updateステートメントを使用してSQLサーバーでこれを行う簡単な方法はありますか? サーバーが変更されると、メンテナンスの悪夢になります。うーん、ずっと前にこれを捕まえていたらよかったのに。
1 に答える
1
この種のことは、 REVERSEを使用すると非常に簡単です。
次のようにして、名前の変更がどのように見えるかをテストできます。
select right(MyColumn, charindex('\', reverse(MyColumn)) - 1)
from MyTable
where charindex(MyColumn, '\') > 0
出力に満足したら、次のようにします。
update MyTable
set MyColumn = right(MyColumn, charindex('\', reverse(MyColumn)) - 1)
where charindex(MyColumn, '\') > 0
于 2013-04-02T18:06:36.933 に答える