SQL UPDATE大写字母

时间:2017-06-23 08:01:04

标签: sql sql-server

美好的一天

我的剧本有问题

UPDATE [dbo].[table]
SET
       [columnX] = replace([columnX], 'A', 'Ľ')

UPDATE [dbo].[table]
SET
       [columnX] = replace([columnX], 'ľ ', 'B')

Select * from [dbo].[table]

columnX
BzzBzz
BzzzzBBz
BzzzzzBB
BzzzBB

我需要这样的结果:

columnX
BzzĽzz
ĽzzzzBBz
BzzzzzĽB
BzzzBĽ

我可以更改哪些内容以使我的更新正确/让他知道有关LOWER和UPPER LETTERS的信息 我无法更改订单,因为我需要进行如此多的更新,并且更改订单会产生其他冲突。 谢谢你们

3 个答案:

答案 0 :(得分:1)

使用区分大小写排序(Latin1_General的示例,但您应该使用自己的排序规则):

UPDATE [dbo].[table]
SET [columnX] = replace([columnX], 'A' collate Latin1_General_CS_AS, 'Ľ')

答案 1 :(得分:0)

一个简单的方法是从

开始
UPDATE [dbo].[table]
SET
       [columnX] = replace([columnX], 'ľ ', 'B')

然后

UPDATE [dbo].[table]
SET
       [columnX] = replace([columnX], 'A', 'Ľ')

答案 2 :(得分:-1)

更新表格设置columnX ='AzzzzBAz',其中columnX ='AzzzzAAz'

更新表集columnX ='AzzzAB'其中columnX ='AzzzAA'