我有一个数据库,假设我有一个名为的表Score
,Score
其中有两个字段
- ID
- 姓名
现在当我看到有很多-
以例如 开头的名字时
-Karl-KSJ
-Jhon-Kate
-Xyz-Abc
现在我想-
从所有行中删除前导并更新它们,并保留名称不是以开头的所有行-
。我怎样才能在 sql 中实现这一点。请注意,我有数百万条记录,因此性能将发挥重要作用。
谢谢,
我有一个数据库,假设我有一个名为的表Score
,Score
其中有两个字段
现在当我看到有很多-
以例如 开头的名字时
-Karl-KSJ
-Jhon-Kate
-Xyz-Abc
现在我想-
从所有行中删除前导并更新它们,并保留名称不是以开头的所有行-
。我怎样才能在 sql 中实现这一点。请注意,我有数百万条记录,因此性能将发挥重要作用。
谢谢,
像这样尝试,它很简单,它可能足够快:
BEGIN TRAN
UPDATE Score
SET Name = RIGHT(Name, LEN(Name) - 1)
WHERE LEFT(Name, 1) = '-'
ROLLBACK
这是一个SQL 小提琴