gpt4 book ai didi

sql-server - 替换 MS SQL Server 中的特定 Unicode 字符

转载 作者:行者123 更新时间:2023-12-04 00:08:24 24 4
gpt4 key购买 nike

我正在使用 MS SQL Server Express 2012。

我无法删除 unicode 字符 U+02CC (十进制:716)在网格结果中。原文是'λeˌβár'。

我这样试了,还是不行:

SELECT ColumnTextWithUnicode, REPLACE(ColumnTextWithUnicode , 'ˌ','') 
FROM TableName

该列具有 Latin1_General_CI_AS 排序规则,数据类型为 nvarchar。我尝试将排序规则更改为二进制,但也没有成功:

SELECT ColumnTextWithUnicode, REPLACE(ColumnTextWithUnicode collate Latin1_General_BIN, 'ˌ' collate Latin1_General_BIN,'') 
FROM TableName

或者甚至使用 NChar() 函数,例如:

SELECT ColumnTextWithUnicode, REPLACE(ColumnTextWithUnicode , NCHAR(716),'') 
FROM TableName

所有三个结果都是“λeˌβár”。

但如果我将列转换为 varchar,例如:

SELECT ColumnTextWithUnicode, REPLACE(CAST(ColumnTextWithUnicode as varchar(100)), 'ˌ','') 
FROM TableName

结果变成'eßár',去掉第一个字符和'ˌ'。

有什么想法可以只删除“ˌ”吗?

最佳答案

你也只需要在字符串模式之前加上 N(如果你想查找 unicode char):

SELECT REPLACE (N'λeˌβár' COLLATE Latin1_General_BIN, N'ˌ', '')

关于sql-server - 替换 MS SQL Server 中的特定 Unicode 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24197784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com