在SQL中搜索包含无效字符的行

4

我有一些行可能包含特殊字符或带重音的字母。我需要检测这些行。 我目前使用以下比较方法:

@Str like '%[^a-zA-Z0-9.,& ]%'

对于特殊字符,这个方法可以正常工作,但对于带有重音的字母则不行。我尝试过更改排序方式。


你的意思是 [a-zA-Z] 也能匹配带重音符号的字母?奇怪... - Alex A.
4
为什么不尝试使用 @str not like '%[a-zA-Z0-9 ]%' 这个表达式,它会返回所有不是普通字母或数字的内容。 - Nate S.
我尝试过那个方法,但没有成功,最终只能一个字母一个字母地写。虽然不太美观,但是可以用。 - user235289
我认为是我在评论中留下的空格导致它对你无效。 - Nate S.
1个回答

2

移除9后面的空格并添加排序规则。此外,我认为列datatype需要是Nvarchar类型。

@str not like '%[^a-zA-Z0-9]%' collate Latin1_General_CI_AS

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接