这有效:
select Name
from Table
WHERE Name like '%[^0-9A-Za-z]%'
但现在我还需要将破折号字符添加到标准中。
利用
...ESCAPE '\'
例如
WHERE Name like '%[^0-9A-Za-z\-]%' ESCAPE '\'
将最后的“-”视为文字。
除非它是范围的一部分,否则连字符不是LIKE模式中的特殊字符,因此您可以将其添加到您的模式中,例如:
select 
        [char]
from
    (
    select 'a' as 'char' union 
    select '-' union 
    select '$' union
    select '7'
    ) dt
where 
    [char] like '%[^A-Za-z0-9-]%'