SQL查询以排除名称末尾的数字,方括号或特殊字符

问题描述 投票:0回答:1

我正在尝试排除所有带有数字的名称,但仍然包括某些特殊字符,例如:()-'

到目前为止,我有这个查询:

从客户端的名字中选择名字不是'%[^ 0-9]%';

这不包括大多数带有数字的名称,但是,仍然有一些类似以下内容的名称(但不排除):

enter image description here

我如何从上面排除这些,但仍然保留如下所示的行:

enter image description here

谢谢你!

sql numbers special-characters suffix filter-run-excluding
1个回答
3
投票

我正在尝试排除其中所有带有数字的名称。

假设您使用的是SQL Server,则您的逻辑有太多的否定。您想要:

WHERE FirstName NOT LIKE '%[0-9]%';

这表示FirstName中没有任何数字。

如果您只想使用字母和空格,请使用:

WHERE FirstName NOT LIKE '%[^a-zA-Z ]%';

您的版本仅声明该字符串没有与数字不同的字符-也就是说,它仅由数字组成。

© www.soinside.com 2019 - 2024. All rights reserved.