我们的表中有一个nvarchar列,使用排序规则SQL_Latin1_General_CP1_CI_AS
。
其中有两条记录,它们在视觉上具有相同的值:
AM209405
AM209405
这些与希腊帐户有关。但是...当我们查看字符的ASCII值时,会得到以下信息:
最上面的一个带有标准代码的A和M。底部的A和M都具有相同的代码63。
因此,当我们比较时,不会返回任何行:
select *
from dbo.mytable a
inner join dbo.mytable b on b.TheValue = a.TheValue
我正在寻找通过整理或其他方法将它们显示为匹配项的方法,这是这样的(不起作用):
select *
from dbo.mytable a
inner join dbo.mytable b on b.TheValue = a.TheValue collate greek_ci_as
我唯一想到的另一种方法是创建某种映射表,将两者等同。
任何建议都值得赞赏,我欢迎您提出任何问题。
谢谢。