繁体   English   中英

如何在SQL(2005)Server中提取带有特殊字符的记录?

[英]how to pull records with special characters in SQL (2005) Server?

我正在尝试提取包含特殊字符的记录,例如:

*,  +,  -, . (dot), ',  , /,  0-9

但是到目前为止没有太多的成功。

该列称为People_Name,其名称应采用以下格式:姓氏,名字。 例如,史密斯,约翰逊。 但是,由于数据输入错误,某些名称显示为:

 681, Smith,  *S-Sean, Tom,   +, John,   -, Tim,  ., .,  /, Celo,  0-9999,
 Maria,  ', Irving, and sometime as 'Unknown, Alexis.

我当前的查询(SQL Server 2005)是

Select People_name
  from mytable
 where (People_name LIKE '%*%' 
    OR People_name LIKE '%-,%'
    OR People_name LIKE '%+%'
    OR People_name LIKE '%/%'
    OR People_name LIKE '%unknown%')

我可以继续添加LIKE列表,但是我确信SQL Server中有一种方法可以提取带有那些特殊字符的记录。 由于表中有超过一千万条记录,要对这些特殊字符进行排序和查找,然后像上面一样使用LIKE运算符,就很重复了。

可以请人调查一下吗?

你可以试试

select People_name
from mytable
where People_name like '%[^a-zA-Z ,]%'

SQL FIDDLE示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM