我正在寻找一些 SQL varchar 比较函数,如 C# string.compare (我们现在可以忽略大小写,当字符表达式相同时应该返回零,当它们不同时应该返回非零表达式)
基本上我在一个表中有一些字母数字列,需要在另一个表中进行验证。
我不能从(查询)中选择 A.col1 - B.col1,因为“-”运算符不能应用于字符表达式
我不能将我的表达式转换为 int (然后做一个差异/减法),因为它失败了
select cast ('ASXT000R' as int)
Conversion failed when converting varchar 'ASXT000R' to int
Soundex
不会这样做,因为 soundex 对于 2 个相似的字符串是相同的
Difference
不会这样做select difference('abc','ABC')
= 4 (根据 msdn,差异是 2 个字符表达式的 soundex 差异,差异 =4 意味着差异最小)
我可以写一个 curson 对每一行中的每个字母数字字符进行 ascii 比较,但我想知道是否还有其他方法可以做到这一点?