1.獲取省市區的字典.
從公開信息獲取信息,以上面的數據為參考,見參考資料【1】
2.獲取身份證列表(自己想辦法)
3.字典使用excel的拆分單元格方式,拆成兩行




4.取兩行數據放入到notepad++或者其他工具,保存為.csv或者.txt格式

導入到mysql或者其他數據庫

形成字典表
select SUBSTR(code FROM 1 FOR 2) as provinceCode,address as provinceName from address where code like '%0000';

形成省份地區關聯表
insert INTO MappingCode(id_code,province,city)
select a.code,p.proviceName,CONCAT(p.proviceName,a.address) FROM address a
LEFT JOIN province p on SUBSTR(a.code FROM 1 FOR 2)=p.provinceCode

1.查詢身份證所屬省份
select pr.proviceName as '省份',ss.cnt as '身份信息的數量' from
(select t.province as provinceCode,count(t.province) as cnt from (select SUBSTR(idno FROM 1 FOR 2) as province from info ) t GROUP BY t.province
order by count(t.province) desc limit 1000) ss
LEFT JOIN province pr ON pr.provinceCode=ss.provinceCode
where pr.proviceName is not null
ORDER BY ss.cnt desc;

2.查詢身份證所屬地區
select mc.city as '地區',ss.cnt as '身份信息的數量' from
(select t.area as areaCode,count(t.area) as cnt from (select SUBSTR(idno FROM 1 FOR 6) as area from info ) t GROUP BY t.area
order by count(t.area) desc limit 1000) ss
LEFT JOIN MappingCode mc ON id_code=ss.areaCode
where mc.city is not null
ORDER BY ss.cnt desc;

參考資料
【1】https://www.cnblogs.com/wormday/articles/278709.html