MySql教程

mysql存储行政区划表

本文主要是介绍mysql存储行政区划表,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

最近做项目时碰到需要选取省市县填充,本来前端实现这个功能是非常方便的,利用vue的组件库就可以实现,但是我们项目中台不好再引入这些组件库,所以就让后端实现!
网上找了一些数据,但是都不是最新的行政区划数据,于是我就在我国的官方网站上下载了数据(行政区划官网上并没有台湾省的资料,我从vue官方文档中拿的相关数据),存到mysql库中,实现省市县三级查询。

数据库实例

三张表分别存放省市区,很明了,查询也方便
image

sql文件

存到百度云盘里了,有需要可自取,三个sql文件分别对应省市区
链接:https://pan.baidu.com/s/136W4PtvQ6llA51RYePoieA
提取码:dnvc

代码查询

建议使用mybatis查询,并且用collections标签会好很多
实例:

<resultMap id="baseResultMap" type="utry.scrm.entity.Region">
        <result property="id" column="province_id" jdbcType="VARCHAR"/>
        <result property="regionName" column="province" jdbcType="VARCHAR"/>
        <collection property="list" ofType="utry.scrm.entity.Region">
            <result property="id" column="city_id" jdbcType="VARCHAR"/>
            <result property="regionName" column="city" jdbcType="VARCHAR"/>
            <collection property="list" ofType="utry.scrm.entity.Area">
                <result property="id" column="area_id" jdbcType="VARCHAR"/>
                <result property="regionName" column="area" jdbcType="VARCHAR"/>
            </collection>
        </collection>
</resultMap>

<select id="自己的dao层方法" resultMap="baseResultMap">
	SELECT
            a.province_id,
            a.province,
            b.city_id,
            b.city,
            c.area_id,
            c.area
        FROM
            provinces a
            LEFT JOIN cities b ON a.province_id = b.province_id
            LEFT JOIN areas c ON b.city_id = c.city_id
</select>


这篇关于mysql存储行政区划表的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!