数据库SQL语句:将电话号码这一列里面按照所含数字6的个数分类,如含1个6,2个6等这个SQL查询语句怎么写
1个回答
展开全部
尝试写一个,未必能用要测试的。
首先确定电话号码是字符型的,如果不是那么就转换一下。
然后用
select 电话号码,
case when 电话号码 ='6666666' then 1
when 电话号码 like '%6%6%6%6%6%6%' then 2
when 电话号码 like '%6%6%6%6%6%' then 3
when 电话号码 like '%6%6%6%6%' then 4
when 电话号码 like '%6%6%6%' then 5
when 电话号码 like '%6%6%' then 6
when 电话号码 like '%6%' then 7
else 8 end 带6的分组 from table
我这里假设是7位的电话号码,如果是八位可能出现66666666,那么前面就再加一个等于八个6的(记得是前面不是后面,如果是后面那么就出不来了),7个6的改为like语句。然后如果再想分组就根据标记(也就是1,2,3,4,5,6,7)分组就可以了。不过这个要测试的,我只是觉得这样可行。
首先确定电话号码是字符型的,如果不是那么就转换一下。
然后用
select 电话号码,
case when 电话号码 ='6666666' then 1
when 电话号码 like '%6%6%6%6%6%6%' then 2
when 电话号码 like '%6%6%6%6%6%' then 3
when 电话号码 like '%6%6%6%6%' then 4
when 电话号码 like '%6%6%6%' then 5
when 电话号码 like '%6%6%' then 6
when 电话号码 like '%6%' then 7
else 8 end 带6的分组 from table
我这里假设是7位的电话号码,如果是八位可能出现66666666,那么前面就再加一个等于八个6的(记得是前面不是后面,如果是后面那么就出不来了),7个6的改为like语句。然后如果再想分组就根据标记(也就是1,2,3,4,5,6,7)分组就可以了。不过这个要测试的,我只是觉得这样可行。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询