为什么我的加入查询不适用于正则表达式?

时间:2019-05-28 12:08:27

标签: mysql regex

我想使用我在www.regex101.com和其他正则表达式测试网站上测试过的正则表达式在数据库中找到一些无效的邮政编码,并且效果很好。 我还需要将表与另一个表连接起来,以查找有关该记录的更多详细信息。但是查询不起作用,并且继续搜索而没有任何错误。 我已经将此精确正则表达式用于没有联接的另一个查询,并且仅用于一个表,并且它可以工作。因此,我认为这与其他开发人员告诉我的反向引用无关。

这是我尝试过的查询:

"SELECT a.Name,a.AdslTel,a.Mobile, b.CodePosty 
 FROM on_customers as a, on_customers_detail as b 
 WHERE a.Serial=b.CustomerRef and a.TownshipRef='1' 
 AND b.CodePosty NOT REGEXP '^[13456789]{5}[1-9]([[:digit:]]){3}([1-9]){1}$' or b.CodePosty REGEXP '([[:digit:]])\1{5,}' "

这是正常工作的查询:

"SELECT * FROM on_customers WHERE Mobile NOT REGEXP '^(09)([[:digit:]]){9}$' 
 or Mobile REGEXP '([[:digit:]])\1{5,}' "

0 个答案:

没有答案