0

私は2つのフィールドがある という名前Score のテーブルがあると仮定するデータベースを持っていますScore

  1. ID
  2. 名前

-たとえば 、で始まる名前がたくさんあることがわかりました

-Karl-KSJ
-Jhon-Kate
-Xyz-Abc

今、私-はすべての行から先頭を削除して更新し、名前が で始まっていないすべての行を残します-。どうすればそれを sql で達成できますか。私は何百万ものレコードを持っているので、パフォーマンスが重要な役割を果たすことに注意してください。

ありがとう、

4

1 に答える 1

4

次のように試してみてください。簡単です。十分に速いかもしれません。

BEGIN TRAN

UPDATE  Score 
SET     Name = RIGHT(Name, LEN(Name) - 1)
WHERE   LEFT(Name, 1) = '-'

ROLLBACK

ここにSQLフィドルがあります

于 2012-12-05T11:13:29.630 に答える