请教各位大大:如何在一列中进行排序,相似的排在一起。
如:
中国移动公司
中国联通公司
中国电信公司
广东电信公司
北京电信公司
北京移动公司排为:中国移动公司
北京移动公司
中国联通公司
中国电信公司
广东电信公司
北京电信公司数据量大致为30000行左右。公司名大概有70,80%相似的就排列在一起?
如:
中国移动公司
中国联通公司
中国电信公司
广东电信公司
北京电信公司
北京移动公司排为:中国移动公司
北京移动公司
中国联通公司
中国电信公司
广东电信公司
北京电信公司数据量大致为30000行左右。公司名大概有70,80%相似的就排列在一起?
substring 或left 函数。
from (
select '中国移动公司' a
union all select '中国联通公司'
union all select '中国电信公司'
union all select '广东电信公司'
union all select '北京电信公司'
union all select '北京移动公司') b
order by substring(a,3,2) desc,left(a,2) desc
/*
中国移动公司
北京移动公司
中国联通公司
中国电信公司
广东电信公司
北京电信公司
*/