尝试匹配字段中的模式和重复数字

时间:2016-10-18 15:28:32

标签: sql regex oracle plsql toad

我有一个存储社交密码的字段[SSN]。很多记录都有一个虚拟值,我试图在Where语句中找到它们。我想找到:

  • 具有0-9范围内重复数字的行。
  • 具有此范围内的数字的行,重复5次

我想要找到的例子:

00000
11111
22222
333333
444444
555555
666666
777777

我目前正在使用TOAD for Oracle来运行查询。

2 个答案:

答案 0 :(得分:2)

您可以使用带后向引用的正则表达式找到这些模式。我认为这样做可以解决问题:

where regexp_like(ssn, '([0-9])(\1){4}')

即找到一个数字,然后确定它是否重复了4次或更多次。

答案 1 :(得分:0)

在sql中,只有你可以使用long或条件才能使用它:

where col like '%11111%' or col like '%22222%' or col like '%33333%' ........