sql从DB2中获取特殊字符

时间:2013-04-10 04:18:00

标签: sql sql-server sql-server-2008 db2

姓名=麦当劳| #176地址车道

名称=肯德基| 67地址车道

条件:

应打印带有姓名和地址的特殊字符(。,/ - !@#$ ^& .....)。

因此,应该打印麦当劳和#176地址栏的名称,并且应该删除没有特殊字符的名称和地址的休息

预期产出:

麦当劳#176地址车道

2 个答案:

答案 0 :(得分:0)

查看LIKE进行比较。它允许您使用%(或其他字符)作为外卡进行字符串比较。如果您在查看手册后需要更多帮助,请说明您不理解的部分。

答案 1 :(得分:0)

您可以使用TRANSLATE

SELECT Name, Address FROM mytable WHERE Name <> TRANSLATE(Name,'                 ', '(.,/-!@#$^&.....)') OR Address <> TRANSLATE(Address,'                 ', '(.,/-!@#$^&.....)')

TRANSLATE()的第二个参数是一个由要捕获的所有字符组成的字符串。第一个参数是一个与第二个参数长度相同的空白字符串。

如果在NameAddress中找到与第二个字符串中的任何字符匹配的任何字符,则将使用更改的值进行比较。通过与原始值进行比较,您将捕获具有特殊字符的行。