处理国标省市区
2017-12-07 00:00
120 查看
最近处理国标省市区。国家标准如下,截止2016年7月31日:
http://www.stats.gov.cn/tjsj/tjbz/xzqhdm/201703/t20170310_1471429.html
注意省市区编号,前两位表示省,中间两位表示市。
首先建立表:
然后把数据复制粘贴进去,会粘贴到code字段里。
去除空格等特殊字符:
设置code、name。
查询省:
SELECT * FROM area_t_copy WHERE right(`code`,4)='0000';
查询市:
SELECT * FROM area_t_copy WHERE right(`code`,2)='00' AND right(`code`,4) !='0000';
更新省市的级别:
更新parent 。
处理后最终结果如下:
最终我导出了一个文件,文件地址:https://gitee.com/wkcom/notes/blob/master/area_t_copy.sql
删除“市辖区”。
http://www.stats.gov.cn/tjsj/tjbz/xzqhdm/201703/t20170310_1471429.html
注意省市区编号,前两位表示省,中间两位表示市。
首先建立表:
DROP TABLE IF EXISTS `area_t_copy`; CREATE TABLE `area_t_copy` ( `code` varchar(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `level` tinyint(255) DEFAULT NULL, `parent` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
然后把数据复制粘贴进去,会粘贴到code字段里。
去除空格等特殊字符:
UPDATE area_t_copy SET `code` = trim( replace( `code`, '\n\r', '')) update area_t_copy set code= replace(code ,'\n\r',''); update area_t_copy set code= replace(code ,'\n',''); update area_t_copy set code= replace(code ,'\r',''); update area_t_copy set code= replace(code ,' ',''); update area_t_copy set code= replace(code ,' ','');
设置code、name。
update area_t_copy set `name`= substring(`code`,7); update area_t_copy set code= LEFT(`code`,6);
查询省:
SELECT * FROM area_t_copy WHERE right(`code`,4)='0000';
查询市:
SELECT * FROM area_t_copy WHERE right(`code`,2)='00' AND right(`code`,4) !='0000';
更新省市的级别:
UPDATE area_t_copy SET level = 1 WHERE right(`code`,4)='0000'; UPDATE area_t_copy SET level = 2 WHERE right(`code`,2)='00' AND right(`code`,4) !='0000'; UPDATE area_t_copy SET level = 3 WHERE level IS NULL;
更新parent 。
UPDATE area_t_copy SET parent = CONCAT(left(code,2),'0000') WHERE `level`=2; UPDATE area_t_copy SET parent = CONCAT(left(code,4),'00') WHERE `level`=3;
处理后最终结果如下:
最终我导出了一个文件,文件地址:https://gitee.com/wkcom/notes/blob/master/area_t_copy.sql
删除“市辖区”。
DELETE FROM area_t_copy WHERE `level`=3 AND `name`='市辖区'; //剩下4个直辖市的市辖区。手动更改。 UPDATE area_t_copy SET parent = '110000' WHERE parent='110100' ; UPDATE area_t_copy SET parent = '120000' WHERE parent='120100' ; UPDATE area_t_copy SET parent = '310000' WHERE parent='310100' ; UPDATE area_t_copy SET parent = '500000' WHERE parent='500100' ; DELETE FROM area_t_copy WHERE `name`='市辖区'
相关文章推荐
- 读取省市区文件,并对文件内的数据进行处理和存储
- 类处理省市区文本
- c++ 11 国标标准方面的异常处理与微软在Visual Studio 2012的异常处理的区别
- C++ 11 国标标准方面的异常处理与微软在Visual Studio 2012的异常处理的区别
- 特殊JSON处理(如省市区数据,国家区号数据)
- Ubuntu16.04安装QQ在处理时有错误发生: wine-qqintl
- 自定义JSP标签自动完成对页面按钮做权限拦截处理
- .net 中邮件收发处理
- 6.6 中断和中断处理程序_中断处理机制的实现
- C语言字符串处理的库函数
- Exadata混合列压缩如何处理INSERT和UPDATE
- IOS_DatePicker_PickerView_SegmentControl_键盘处理
- 一次linux服务器黑客入侵后处理
- Matlab 简单的数据处理
- python图形处理库Python Imaging Library (PIL)简介及安装
- java的日期时间处理自定义类
- ORA-07445/ORA-00108故障处理
- Qt事件处理的使用方法
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作
- HxD(十六进制编码处理工具) 1.7中文版