数据库
首页 > 数据库> > MySQL 电话号码筛选

MySQL 电话号码筛选

作者:互联网

类型一,AAAA

select phone from user_info where 
    LENGTH(phone) = 11 AND 
    SUBSTRING(phone,8,1) = SUBSTRING(phone,9,1) AND 
    SUBSTRING(phone,9,1) = SUBSTRING(phone,10,1) AND
    SUBSTRING(phone,10,1) = SUBSTRING(phone,11,1)

类型二,AAAB

  select phone from user_info where 
  LENGTH(phone) = 11 AND 
  SUBSTRING(phone,8,1) = SUBSTRING(phone,9,1) AND
  SUBSTRING(phone,9,1) = SUBSTRING(phone,10,1) AND
  SUBSTRING(phone,10,1) != SUBSTRING(phone,11,1)

类型三,AABB

select phone from user_info where 
LENGTH(phone) = 11 AND 
SUBSTRING(phone,8,1) = SUBSTRING(phone,9,1) AND
SUBSTRING(phone,9,1) != SUBSTRING(phone,10,1) AND
SUBSTRING(phone,10,1) = SUBSTRING(phone,11,1)

类型四,ABBB

select phone from user_info where 
LENGTH(phone) = 11 AND 
SUBSTRING(phone,8,1) != SUBSTRING(phone,9,1) AND
SUBSTRING(phone,9,1) = SUBSTRING(phone,10,1) AND
SUBSTRING(phone,10,1) = SUBSTRING(phone,11,1)

类型五,ABCD

select phone from user_info where 
LENGTH(phone) = 11 AND 
SUBSTRING(phone,9,1) = (SUBSTRING(phone,8,1) + 1) AND
SUBSTRING(phone,10,1) = (SUBSTRING(phone,9,1) + 1) AND
SUBSTRING(phone,11,1) = SUBSTRING(phone,10,1)

ps:

SUBSTRING(string,position,length) :截取字符串
参数说明:
  str:     要提取的字符串。
  position:  起始位置。用于指定起始位置,可以是正整数或负整数。
               如果为正整数,表示自正整数开始,截取字符串(起始坐标从1开始);
               如果为负整数,表示就从倒数第几个开始截取。
  length:   截取字符串的长度/个数。

标签:11,10,SUBSTRING,phone,LENGTH,电话号码,MySQL,筛选,select
来源: https://www.cnblogs.com/zydr/p/15689490.html