目录
前言
一、地名数据库
1、数据库模型
2、数据表结构
二、实践之旅,发现同名地名
1、省、市同名
2、市、县同名
3、 区县、乡镇同名
4、乡镇和村委会同名
三、总结
前言
我们祖国地大物博,从北到南,从东到西。祖国位于亚洲东部,太平洋西岸。北起漠河附近的黑龙江江心,南到南沙群岛的曾母暗沙。西起帕米尔高原,东至黑龙江、乌苏里江汇合处。陆地面积960万平方千米,陆上边界2万多千米。让我们从地理的视角来看辽阔的祖国,我国的领土南北跨越的纬度近50度,中国东西跨越经度60多度。最东端在黑龙江和乌苏里江的主航道中心线的相交处(135°2′30’’E)。最西端在帕米尔高原附近(73°29'59.79"E)。最南端在立地暗沙(3°31‘00'N',东经112°17’09”E),为中国南海南沙群岛区域的一座暗沙,是实际上的中国领土的最南端。最北端在漠河以北黑龙江主航道的中心线上(53°33′N,124°20′E)。在这么辽阔的疆域上,我们从行政管理上将他们分为以下的行政区域,截至2020年底,中国共有34个省级行政区(包括23个省、5个自治区、4个直辖市、2个特别行政区)、333个地级行政区、2844个县级行政区、38741个乡镇级行政区。北京是中国的首都。
再往下,还有我们生活的的村名委员会等最基础的群众自治组织。从有国家开始,我们便有了区域的划分。不知道各位有没有注意到身边的行政区划之美,通过地理信息的来展示我们的地名之美,今天开始第一篇,主要将讲解地名篇,地名同名之美。我们都来看一下我们国家的省、市、区、县、乡镇、乡村6级中有哪些是相同的,来看看有没有你的家乡,如果在这系列的数据中找到了你的家乡,可以在评论区中留言哦。
本文将以地名数据库为例,结合地图讲解如何使用SQL语言来查询同名的行政区划。首先介绍地名数据库,包括省(直辖市、自治区、特别行政区)、市、县(区)、乡镇、村等基本信息。然后结合GIS信息来介绍这些同名的地名具体位置。发现GIS之美,用地图将故事。如果你也感兴趣,欢迎在评论区一起讨论吧。
一、地名数据库
首先在进行同名地名的统计时,我们会用到地名数据库,这里我们从互联网上下载相关数据后,构建基础的空间数据库。以此来进行同名的地名库检索。避免新的朋友对内容不太熟悉,这里还是再次介绍一下地名数据库。
1、数据库模型
这里使用的数据库,总的数据量一共有652097(65W)左右,由于包含时空信息,因此将这些数据保存到PostGIS数据库中。使用空间字段来进行存储是为了可以在后续进行地名的空间信息查询。首先介绍一下空间表。
保存的数据信息大致如下:
以上是地名数据库的物理模型和示例数据信息。了解大体的物理结构后对于后续的数据查询就会有统一的认识。
2、数据表结构
为了后续进行SQL的讲解,这里将给出具体的地名表物理脚本,如下所示:
CREATE TABLE "public"."biz_village" (
"id" int8 NOT NULL,
"province_name" varchar(64) COLLATE "pg_catalog"."default" NOT NULL,
"city_code" varchar(16) COLLATE "pg_catalog"."default" NOT NULL,
"city_name" varchar(512) COLLATE "pg_catalog"."default",
"area_code" varchar(64) COLLATE "pg_catalog"."default",
"area_name" varchar(512) COLLATE "pg_catalog"."default",
"township_code" varchar(64) COLLATE "pg_catalog"."default",
"township_name" varchar(512) COLLATE "pg_catalog"."default",
"village_code" varchar(64) COLLATE "pg_catalog"."default",
"village_name" varchar(512) COLLATE "pg_catalog"."default",
"address" varchar(512) COLLATE "pg_catalog"."default",
"type" varchar(32) COLLATE "pg_catalog"."default",
"lng" varchar(24) COLLATE "pg_catalog"."default",
"lat" varchar(24) COLLATE "pg_catalog"."default",
"geom" "public"."geometry",
CONSTRAINT "pk_biz_village" PRIMARY KEY ("id")
);
CREATE INDEX "idx_biz_village_areacode" ON "public"."biz_village" USING btree (
"area_code" COLLATE "pg_catalog"."default" "pg_catalog"."text_ops" ASC NULLS LAST
);
CREATE INDEX "idx_biz_village_city_code" ON "public"."biz_village" USING btree (
"city_code" COLLATE "pg_catalog"."default" "pg_catalog"."text_ops" ASC NULLS LAST
);
CREATE INDEX "idx_biz_village_geom" ON "public"."biz_village" USING gist (
"geom" "public"."gist_geometry_ops_2d"
);
CREATE INDEX "idx_biz_village_geom_gp" ON "public"."biz_village" USING gist (
(geom::geography) "public"."gist_geography_ops"
);
COMMENT ON COLUMN "public"."biz_village"."id" IS '主键';
COMMENT ON COLUMN "public"."biz_village"."province_name" IS '省份名称';
COMMENT ON COLUMN "public"."biz_village"."city_code" IS '市级编码';
COMMENT ON COLUMN "public"."biz_village"."city_name" IS '市级名称';
COMMENT ON COLUMN "public"."biz_village"."area_code" IS '区县编码';
COMMENT ON COLUMN "public"."biz_village"."area_name" IS '区县名称';
COMMENT ON COLUMN "public"."biz_village"."township_code" IS '乡镇编码';
COMMENT ON COLUMN "public"."biz_village"."township_name" IS '乡镇名称';
COMMENT ON COLUMN "public"."biz_village"."village_code" IS '乡村编码';
COMMENT ON COLUMN "public"."biz_village"."village_name" IS '乡村名称';
COMMENT ON COLUMN "public"."biz_village"."address" IS '地址';
COMMENT ON COLUMN "public"."biz_village"."type" IS '类型';
COMMENT ON COLUMN "public"."biz_village"."lng" IS '经度';
COMMENT ON COLUMN "public"."biz_village"."lat" IS '纬度';
COMMENT ON COLUMN "public"."biz_village"."geom" IS 'geom';
同名的地名,其实就是从上面的几个维度进行对比,需要使用到的字段就是省份名称(直辖市名称、自治区名称、特别行政区名称)、市名称、区县名称、乡镇名称、村委会名称等几个字段进行对比。由于行政区划属于基础数据,在别的业务中也会有相应的使用,而在不同级别的地名中,包含的信息又不一样,如下所示:
1733486534197293058 河北省 130400000000 邯郸市 130481000000 武安市 130481207000 管陶乡 130481207209 赵水沟村委会 河北省邯郸市武安市管陶乡赵水沟村委会 220 113.842658700000001 36.849781950000001 0101000020E6100000278CC11EEE755C4095FDA9A7C56C4240
1733486534201487362 河北省 130400000000 邯郸市 130481000000 武安市 130481207000 管陶乡 130481207210 寺峪沟村委会 河北省邯郸市武安市管陶乡寺峪沟村委会 220 113.855604799999995 36.838809660000003 0101000020E61000003D93A23AC2765C406BA26C1D5E6B4240
1733486534201487363 河北省 130400000000 邯郸市 130481000000 武安市 130481207000 管陶乡 130481207211 梨树脑村委会 河北省邯郸市武安市管陶乡梨树脑村委会 220 113.855597299999999 36.825900550000000 0101000020E6100000F0822D1BC2765C40CCFFF51BB7694240
1733486534205681666 河北省 130400000000 邯郸市 130481000000 武安市 130481207000 管陶乡 130481207212 野峪村村委会 河北省邯郸市武安市管陶乡野峪村村委会 220 113.853874200000007 36.806809370000003 0101000020E61000007CF9F8DFA5765C40D120898745674240
1733486534205681667 河北省 130400000000 邯郸市 130481000000 武安市 130481207000 管陶乡 130481207213 龙井村委会 河北省邯郸市武安市管陶乡龙井村委会 220 113.788396000000006 36.846837120000004 0101000020E610000006137F1475725C402CB8A328656C4240
1733486534205681668 河北省 130400000000 邯郸市 130481000000 武安市 130481207000 管陶乡 130481207214 禅房村委会 河北省邯郸市武安市管陶乡禅房村委会 220 113.853874200000007 36.806809370000003 0101000020E61000007CF9F8DFA5765C40D120898745674240
1733486534205681669 河北省 130400000000 邯郸市 130481000000 武安市 130481207000 管陶乡 130481207215 马洺村委会 河北省邯郸市武安市管陶乡马洺村委会 220 113.868096199999997 36.807365900000001 0101000020E61000000A325DE38E775C40EB330CC457674240
以上面的实例数据为例,不同级别的行政区的后缀不一样。比如是某某省、某某市、某某县等等,因此我们需要在上面的数据中将不同的后缀去掉后来进行比较。比如中寨镇、中寨村等。把镇和村去掉后才知道名字是否相同。在下面的例子中我们将基于前面的物理表结构以及上面的实例数据来进行同名地名的筛选。
二、实践之旅,发现同名地名
在上一节中,我们对涉及的地名数据库的物理表结构、实例数据进行了详细的讲解。下面我们可以将在全国范围内,寻找同名的行政区划信息。跟我博主一步一步来进行吧。
1、省、市同名
首先是省级行政区的名称和市级行政区同名的情况。很容易理解,这里我们需要使用的两个字段分别是省级行政区名称和市级行政区名称。将敏感词如省、市去掉后,看全国哪些地方会有这种情况。我们在PostGIS数据库中使用如下的SQL来完成查询。
select province_name,city_name from biz_village
where SPLIT_PART(province_name, '省', 1) = SPLIT_PART(city_name, '市', 1)
OR SPLIT_PART(province_name, '市', 1) = SPLIT_PART(city_name, '区', 1)
group by province_name,city_name;
在数据库客户端软件执行以上sql后,可以看到以下的执行结果,在我国的行政区划上,省级行政区名称和市级行政区名字相同的之后吉林了,是我国的东北三省之一的省份:
吉林省 吉林市
2、市、县同名
看完省、市同名的情况,接下来我们来看一下市级行政区划和县级行政区划的同名情况。这种情况应该是非常常见的。与查询省、市同名的sql语句不同,执行市、县同名的查询语句如下:
select max(province_name) p_name,city_name,area_name from biz_village
where SPLIT_PART(city_name, '市', 1) = SPLIT_PART(area_name, '县', 1)
OR SPLIT_PART(city_name, '市', 1) = SPLIT_PART(area_name, '区', 1)
group by city_name,area_name
order by p_name asc
在客户端执行完成之后,在终端可以看到以下的执行结果:
p_name city_name area_name
安徽省 黄山市 黄山区
安徽省 芜湖市 芜湖县
甘肃省 白银市 白银区
河北省 邢台市 邢台县
河北省 承德市 承德县
河南省 新乡市 新乡县
河南省 安阳市 安阳县
河南省 濮阳市 濮阳县
湖北省 荆州市 荆州区
湖南省 长沙市 长沙县
湖南省 衡阳市 衡阳县
湖南省 邵阳市 邵阳县
湖南省 湘潭市 湘潭县
湖南省 岳阳市 岳阳县
吉林省 通化市 通化县
江苏省 淮安市 淮安区
江西省 吉安市 吉安县
江西省 南昌市 南昌县
辽宁省 辽阳市 辽阳县
辽宁省 铁岭市 铁岭县
辽宁省 朝阳市 朝阳县
辽宁省 抚顺市 抚顺县
山东省 东营市 东营区
四川省 广安市 广安区
新疆维吾尔自治区 乌鲁木齐市 乌鲁木齐县
新疆维吾尔自治区 克拉玛依市 克拉玛依区
可以看到在全国行政区划中,市、县行政区名称相同的一共有26个城市。比如我们熟悉的安徽省黄山市黄山区、湖南省长沙市长沙县、新疆维吾尔自治区乌鲁木齐市乌鲁木齐区等等。湖南省和辽宁省的同名地名较多。
长沙市长沙县
辽宁省铁岭市铁岭县
3、 区县、乡镇同名
接下来来看下区、县和乡镇同名的行政区划有多少个?依然先给出区、县同名的查询SQL,具体的SQL语句如下:
p_name area_name township_name
安徽省 博望区 博望镇
安徽省 烈山区 烈山镇
安徽省 濉溪县 濉溪镇
安徽省 枞阳县 枞阳镇
安徽省 潘集区 潘集镇
安徽省 八公山区 八公山镇
北京市 密云区 密云镇
北京市 延庆区 延庆镇
福建省 马尾区 马尾镇
福建省 仓山区 仓山镇
甘肃省 庆城县 庆城镇
甘肃省 瓜州县 瓜州镇
甘肃省 古浪县 古浪镇
甘肃省 红古区 红古镇
甘肃省 麦积区 麦积镇
甘肃省 金塔县 金塔镇
甘肃省 崆峒区 崆峒镇
广东省 斗门区 斗门镇
广东省 坡头区 坡头镇
广东省 麻章区 麻章镇
广西壮族自治区 灵川县 灵川镇
广西壮族自治区 阳朔县 阳朔镇
广西壮族自治区 临桂区 临桂镇
广西壮族自治区 雁山区 雁山镇
广西壮族自治区 东兰县 东兰镇
广西壮族自治区 良庆区 良庆镇
广西壮族自治区 昭平县 昭平镇
广西壮族自治区 兴安县 兴安镇
广西壮族自治区 江州区 江州镇
广西壮族自治区 福绵区 福绵镇
广西壮族自治区 象州县 象州镇
广西壮族自治区 灌阳县 灌阳镇
广西壮族自治区 武宣县 武宣镇
广西壮族自治区 天等县 天等镇
广西壮族自治区 博白县 博白镇
广西壮族自治区 全州县 全州镇
广西壮族自治区 长洲区 长洲镇
广西壮族自治区 资源县 资源镇
广西壮族自治区 平乐县 平乐镇
广西壮族自治区 钟山县 钟山镇
广西壮族自治区 永福县 永福镇
广西壮族自治区 蒙山县 蒙山镇
广西壮族自治区 鹿寨县 鹿寨镇
广西壮族自治区 龙州县 龙州镇
贵州省 万山区 万山镇
河北省 滦平县 滦平镇
河北省 安平县 安平镇
河北省 安新县 安新镇
河北省 柏乡县 柏乡镇
河北省 博野县 博野镇
河北省 昌黎县 昌黎镇
河北省 成安县 成安镇
河北省 赤城县 赤城镇
河北省 大名县 大名镇
河北省 定兴县 定兴镇
河北省 东光县 东光镇
河北省 肥乡区 肥乡镇
河北省 丰南区 丰南镇
河北省 丰润区 丰润镇
河北省 抚宁区 抚宁镇
河北省 阜城县 阜城镇
河北省 阜平县 阜平镇
河北省 高邑县 高邑镇
河北省 固安县 固安镇
河北省 故城县 故城镇
河北省 馆陶县 馆陶镇
河北省 广平县 广平镇
河北省 广宗县 广宗镇
河北省 海港区 海港镇
河北省 鸡泽县 鸡泽镇
河北省 冀州区 冀州镇
河北省 巨鹿县 巨鹿镇
河北省 开平区 开平镇
河北省 康保县 康保镇
河北省 涞水县 涞水镇
河北省 涞源县 涞源镇
河北省 乐亭县 乐亭镇
河北省 临城县 临城镇
河北省 临西县 临西镇
河北省 临漳县 临漳镇
河北省 灵寿县 灵寿镇
河北省 隆化县 隆化镇
河北省 隆尧县 隆尧镇
河北省 卢龙县 卢龙镇
河北省 栾城区 栾城镇
河北省 满城区 满城镇
河北省 南皮县 南皮镇
河北省 内丘县 内丘镇
河北省 平山县 平山镇
河北省 平乡县 平乡镇
河北省 清苑区 清苑镇
河北省 曲周县 曲周镇
河北省 饶阳县 饶阳镇
河北省 容城县 容城镇
河北省 深泽县 深泽镇
河北省 肃宁县 肃宁镇
河北省 万全区 万全镇
河北省 望都县 望都镇
河北省 文安县 文安镇
河北省 无极县 无极镇
河北省 武强县 武强镇
河北省 武邑县 武邑镇
河北省 新河县 新河镇
河北省 兴隆县 兴隆镇
河北省 盐山县 盐山镇
河北省 永清县 永清镇
河北省 玉田县 玉田镇
河北省 赞皇县 赞皇镇
河北省 枣强县 枣强镇
河北省 张北县 张北镇
河北省 正定县 正定镇
河北省 涿鹿县 涿鹿镇
河南省 牧野区 牧野镇
黑龙江省 克山县 克山镇
黑龙江省 鸡东县 鸡东镇
黑龙江省 依安县 依安镇
黑龙江省 木兰县 木兰镇
黑龙江省 依兰县 依兰镇
黑龙江省 延寿县 延寿镇
黑龙江省 大同区 大同镇街道
黑龙江省 明水县 明水镇
黑龙江省 拜泉县 拜泉镇
黑龙江省 集贤县 集贤镇
黑龙江省 克东县 克东镇
黑龙江省 麻山区 麻山镇
黑龙江省 大同区 大同镇
黑龙江省 桦南县 桦南镇
黑龙江省 方正县 方正镇
黑龙江省 林甸县 林甸镇
黑龙江省 绥滨县 绥滨镇
黑龙江省 绥棱县 绥棱镇
黑龙江省 饶河县 饶河镇
黑龙江省 孙吴县 孙吴镇
黑龙江省 塔河县 塔河镇
黑龙江省 泰来县 泰来镇
黑龙江省 汤原县 汤原镇
黑龙江省 宝清县 宝清镇
黑龙江省 勃利县 勃利镇
黑龙江省 通河县 通河镇
黑龙江省 庆安县 庆安镇
黑龙江省 青冈县 青冈镇
黑龙江省 新林区 新林镇
黑龙江省 林口县 林口镇
黑龙江省 富裕县 富裕镇
黑龙江省 望奎县 望奎镇
黑龙江省 茄子河区 茄子河镇
黑龙江省 肇州县 肇州镇
黑龙江省 平房区 平房镇
黑龙江省 巴彦县 巴彦镇
黑龙江省 兰西县 兰西镇
黑龙江省 呼玛县 呼玛镇
黑龙江省 甘南县 甘南镇
黑龙江省 友谊县 友谊镇
黑龙江省 龙凤区 龙凤镇
黑龙江省 龙江县 龙江镇
黑龙江省 呼中区 呼中镇
黑龙江省 肇源县 肇源镇
湖北省 华容区 华容镇
湖北省 黄梅县 黄梅镇
湖北省 团风县 团风镇
湖北省 青山区 青山镇街道
湖北省 沙洋县 沙洋镇
湖南省 渌口区 渌口镇
湖南省 沅陵县 沅陵镇
湖南省 中方县 中方镇
湖南省 花垣县 花垣镇
湖南省 南岳区 南岳镇
湖南省 衡阳综合保税区 衡阳综合保税区
吉林省 梨树县 梨树镇
吉林省 汪清县 汪清镇
吉林省 长岭县 长岭镇
吉林省 东丰县 东丰镇
吉林省 柳河县 柳河镇
吉林省 辉南县 辉南镇
吉林省 靖宇县 靖宇镇
吉林省 农安县 农安镇
吉林省 乾安县 乾安镇
吉林省 抚松县 抚松镇
江苏省 响水县 响水镇
江西省 浮梁县 浮梁镇
江西省 分宜县 分宜镇
江西省 安源区 安源镇
江西省 都昌县 都昌镇
江西省 鄱阳县 鄱阳镇
江西省 龙南县 龙南镇
江西省 上栗县 上栗镇
江西省 芦溪县 芦溪镇
江西省 湘东区 湘东镇
江西省 青云谱区 青云谱镇
辽宁省 西丰县 西丰镇
辽宁省 昌图县 昌图镇
辽宁省 绥中县 绥中镇
辽宁省 建平县 建平镇
辽宁省 彰武县 彰武镇
辽宁省 建昌县 建昌镇
内蒙古自治区 元宝山区 元宝山镇
内蒙古自治区 开鲁县 开鲁镇
内蒙古自治区 林西县 林西镇
内蒙古自治区 突泉县 突泉镇
青海省 平安区 平安镇
山东省 嘉祥县 嘉祥镇街道
山东省 兰陵县 兰陵镇
山东省 庆云县 庆云镇
山东省 临邑县 临邑镇
山东省 武城县 武城镇
山东省 博山区 博山镇
山西省 柳林县 柳林镇
山西省 云冈区 云冈镇
山西省 娄烦县 娄烦镇
山西省 新荣区 新荣镇
陕西省 武功县 武功镇
陕西省 府谷县 府谷镇
上海市 嘉定区 嘉定镇街道
四川省 江安县 江安镇
四川省 安居区 安居镇
四川省 沙湾区 沙湾镇
四川省 南江县 南江镇
四川省 雁江区 雁江镇
四川省 屏山县 屏山镇
四川省 朝天区 朝天镇
四川省 沿滩区 沿滩镇
四川省 合江县 合江镇
四川省 古蔺县 古蔺镇
四川省 甘孜县 甘孜镇
四川省 阿坝县 阿坝镇
四川省 昭化区 昭化镇
四川省 长宁县 长宁镇
四川省 筠连县 筠连镇
四川省 叙永县 叙永镇
四川省 丹棱县 丹棱镇
四川省 仁和区 仁和镇
天津市 静海区 静海镇
天津市 宁河区 宁河镇
西藏自治区 比如县 比如镇
西藏自治区 卡若区 卡若镇
西藏自治区 康马县 康马镇
西藏自治区 拉孜县 拉孜镇
西藏自治区 朗县 朗镇
西藏自治区 浪卡子县 浪卡子镇
西藏自治区 类乌齐县 类乌齐镇
西藏自治区 丁青县 丁青镇
西藏自治区 隆子县 隆子镇
西藏自治区 洛扎县 洛扎镇
西藏自治区 错那县 错那镇
西藏自治区 措勤县 措勤镇
西藏自治区 米林县 米林镇
西藏自治区 措美县 措美镇
西藏自治区 墨脱县 墨脱镇
西藏自治区 南木林县 南木林镇
西藏自治区 尼玛县 尼玛镇
西藏自治区 聂拉木县 聂拉木镇
西藏自治区 聂荣县 聂荣镇
西藏自治区 普兰县 普兰镇
西藏自治区 曲水县 曲水镇
西藏自治区 曲松县 曲松镇
西藏自治区 日土县 日土镇
西藏自治区 萨迦县 萨迦镇
西藏自治区 桑日县 桑日镇
西藏自治区 申扎县 申扎镇
西藏自治区 边坝县 边坝镇
西藏自治区 西藏文化旅游创意园区 西藏文化旅游创意园区
西藏自治区 改则县 改则镇
西藏自治区 岗巴县 岗巴镇
西藏自治区 革吉县 革吉镇
西藏自治区 工布江达县 工布江达镇
西藏自治区 吉隆县 吉隆镇
西藏自治区 加查县 加查镇
西藏自治区 嘉黎县 嘉黎镇
西藏自治区 江达县 江达镇
西藏自治区 江孜县 江孜镇
新疆维吾尔自治区 特克斯县 特克斯镇
新疆维吾尔自治区 伊吾县 伊吾镇
新疆维吾尔自治区 巴楚县 巴楚镇
新疆维吾尔自治区 乌什县 乌什镇
新疆维吾尔自治区 阿克陶县 阿克陶镇
新疆维吾尔自治区 泽普县 泽普镇
新疆维吾尔自治区 托里县 托里镇
新疆维吾尔自治区 托克逊县 托克逊镇
新疆维吾尔自治区 博湖县 博湖镇
新疆维吾尔自治区 疏勒县 疏勒镇
新疆维吾尔自治区 昭苏县 昭苏镇
新疆维吾尔自治区 阿合奇县 阿合奇镇
新疆维吾尔自治区 额敏县 额敏镇
新疆维吾尔自治区 精河县 精河镇
新疆维吾尔自治区 巩留县 巩留镇
新疆维吾尔自治区 鄯善县 鄯善镇
新疆维吾尔自治区 莎车县 莎车镇
新疆维吾尔自治区 沙雅县 沙雅镇
新疆维吾尔自治区 若羌县 若羌镇
新疆维吾尔自治区 岳普湖县 岳普湖镇
新疆维吾尔自治区 布尔津县 布尔津镇
新疆维吾尔自治区 新和县 新和镇
新疆维吾尔自治区 青河县 青河镇
新疆维吾尔自治区 且末县 且末镇
新疆维吾尔自治区 奇台县 奇台镇
新疆维吾尔自治区 和静县 和静镇
新疆维吾尔自治区 策勒县 策勒镇
新疆维吾尔自治区 福海县 福海镇
新疆维吾尔自治区 尼勒克县 尼勒克镇
新疆维吾尔自治区 呼图壁县 呼图壁镇
新疆维吾尔自治区 麦盖提县 麦盖提镇
新疆维吾尔自治区 玛纳斯县 玛纳斯镇
新疆维吾尔自治区 达坂城区 达坂城镇
新疆维吾尔自治区 洛浦县 洛浦镇
新疆维吾尔自治区 拜城县 拜城镇
新疆维吾尔自治区 吉木乃县 吉木乃镇
新疆维吾尔自治区 吉木萨尔县 吉木萨尔镇
新疆维吾尔自治区 轮台县 轮台镇
新疆维吾尔自治区 新源县 新源镇
新疆维吾尔自治区 阿瓦提县 阿瓦提镇
新疆维吾尔自治区 英吉沙县 英吉沙镇
新疆维吾尔自治区 柯坪县 柯坪镇
新疆维吾尔自治区 温宿县 温宿镇
新疆维吾尔自治区 尉犁县 尉犁镇
新疆维吾尔自治区 乌尔禾区 乌尔禾镇
新疆维吾尔自治区 乌恰县 乌恰镇
云南省 思茅区 思茅镇
云南省 勐腊县 勐腊镇
云南省 勐海县 勐海镇
云南省 芒市 芒市镇
浙江省 南浔区 南浔镇
重庆市 云阳县 云阳镇
通过以上的执行结果可以看到,区县和乡镇同名的情况较多,一共有322条。分布的范围也更广。
湖南省衡阳市南岳区南岳镇
4、乡镇和村委会同名
在文章的最后,来看一下,乡镇和村委会同名的在全国范围内又有多少个,肯定比区县和乡镇同名的情况多很多。执行sql如下:
select max(province_name) p_name,max(city_name) city_name,max(area_name) area_name,township_name,village_name from biz_village
where SPLIT_PART(township_name, '镇', 1) = SPLIT_PART(village_name, '村民委员会', 1)
group by township_name,village_name
order by p_name asc;
在客户端软件中执行上面sql后可以看到在全国范围内一共有1256条数据。
注:以上的查询示例仅包含大多数的情况,还有一些特殊的情况没有考虑在内,比如一些民族自治县和旗、盟等区划。如果大家感兴趣,可以在实际例子中进行深度开发,自行调整。
三、总结
以上就是本文的主要内容,本文将以地名数据库为例,结合地图讲解如何使用SQL语言来查询同名的行政区划。首先介绍地名数据库,包括省(直辖市、自治区、特别行政区)、市、县(区)、乡镇、村等基本信息。然后结合GIS信息来介绍这些同名的地名具体位置。发现GIS之美,用地图将故事。通过探寻发现同名的地名,期待您发现更多有趣的地理知识。行文仓促,定有不足之处,在此恳请各位专家和朋友在评论区不吝赐教,不甚荣幸。