行政区划分级sql版

博客介绍了如何使用SQL处理行政区划数据,将初始的单一代码转换为分级表示,如河北省、石家庄市、桥东区。通过识别以“省、市、县、区”结尾的条目并进行替换,然后利用split函数拆分成数组,最后处理“市辖区”为“辖区”的问题,以适应不同的数据库系统。
摘要由CSDN通过智能技术生成

行政区划分级处理!

项目上经常能遇到数据表转换的需求,比如行政区划表,有时候行政区划表长这样:
initial: 130103---->河北省石家庄市桥东区
但是实施的时候需要用到这样的
result:130000—>河北省;
130100—>石家庄市;
130103—>桥东区;
单列形式,在已有码表的情况下当然是sql来的简单粗暴(当然为了不留后患最好还是写到官网爬最新的数据,网址路径在下面都有);sql思路也很简单:标准行政区划地区结束名为—省、市、县、区,所以出现这四个字后替换为 “【省/市/县/区】+【空格】”,然后去掉最后的空格,用split函数转为数组后区指定位置的,因为生成之后发现二级区划中的【市辖区】变成了【辖区】,所以在最后需要将辖区这个词替换一下。(数据库不同支持的函数不同,这个就需要具体修正了,我这里用的是hsql)

- select primitive, 
 - case when dictionary_describe = '辖区' 
 - 		then '市辖区'
   		else dictionary_describe end as dictionary_describe 
   from ( 
   
   		select
   			pr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值