【发布时间】:2014-04-08 11:21:25
【问题描述】:
我正在尝试在 DB2 中创建一个查询,该查询将选择给定字段中包含非字母数字字符的所有记录。我已经尝试过post 中的代码,但它似乎不起作用。我需要搜索的信息是地址信息,因此可以接受空格,即
数据示例 - 10 The High Street - 好,因此不在报告中显示 10 高街 - 不好,因此在报告中显示
任何帮助将不胜感激
【问题讨论】:
-
给我示例代码
-
请发布您的代码(不仅仅是链接到另一个帖子)并解释“似乎不起作用”的含义。
-
您链接到的帖子使用了正则表达式,这是 DB2 所没有的特性。你必须想出一个不同的解决方案。
-
我尝试过使用下面的。
-
我尝试过使用:-
SELECT * FROM PAYMENT WHERE NOT xmlcast(xmlquery('fn:matches($s, "^[a-zA-Z0-9 ]*[0-9][a-zA-Z0-9 ]*$")' passing LONG_NAME AS "s") AS int)=0。我以前使用过 xmlcast,它与另一个正则表达式一起工作正常,以确定前 2 个字符是否是字母,后 2 个字符是否是使用"^[a-zA-Z]{2}[0-9]{2}"的数字当我运行上述查询时,返回所有记录,包括包含的记录没有特殊字符或空格,两者都不应该返回