中国地区编码数据库具体名称是什么?

更新于
2026-08-11 08:44:26
2阅读来源:SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐
老实说,

概述

中国地区编码数据库是政府、统计、邮政、教育、GIS 等领域必不可少的基础数据资源。它记录了从国家级到村级的五级行政区划信息。每个单位都有唯一的编码,便于层级查询与数据统一。

使用者痛点一览

  • 免费、全面的数据源稀缺,付费版本价格不透明。
  • 下载文件格式多样,不知哪种最适合导入数据库。
  • 缺乏标准化导入脚本,导致自行编写过程繁琐。说起来,
  • 更新周期不明确。担心使用过时的数据影响业务准确性。

获取最新编码文件

  1. 官方渠道:访问国家统计局官网,在“统计数据”或“行政区划”栏目下载最新版压缩包。文件一般为纯文本或 CSV 格式。
  2. 第三方网站:如 提供完整 MySQL/MSSQL 导入脚本与 SQL 文件;也可在 GitHub 搜索 “China administrative division code” 获取开源项目。

文件结构示例

# 行政区划编码 父ID 级别 名称 组合方法 110000,1 北京市 110100,110000,2 北京市 市辖区 110101,110100。3 东城区

中国地区编码数据库具体名称是什么?

创建数据库表结构

提示:下面的表结构适用于 MySQL,其他 RDBMS 可做轻微调整。

NameDescription
行政区划表
ID 主键,自增或使用编码字段作为主键。
|Code| CHAR | 主键,六位行政区划码。
|Name| VARCHAR|FullName| VARCHAR
|ParentCode| CHAR|Level| TINYINT
|Path| VARCHAR|PostalCode| CHAR 可选字段。不过,
使用树形结构存储。可通过父子关系快速检索层级方法。

创建表语句示例

CREATE TABLE admin_division (
Code CHAR NOT NULL PRIMARY KEY,Name VARCHAR NOT NULL。FullName VARCHAR,ParentCode CHAR,Level TINYINT NOT NULL,Path VARCHAR,PostalCode CHAR,CONSTRAINT fk_parent
FOREIGN KEY
REFERENCES admin_division
);ALTER TABLE admin_division ADD INDEX idx_parent;ALTER TABLE admin_division ADD INDEX idx_level;ALTER TABLE admin_division ADD INDEX idx_name;COMMIT,

导入数据库文件步骤

  1. 准备工作: - 确认已安装 MySQL 并能正常连接。- 将下载得到的 txt/CSV 文件放置在服务器可访问目录下。按理说,- 如果使用 Windows。可以用记事本检查编码是否为 UTF‑8,无 BOM。
  2. 批量导入示例: 若文件为 CSV,可直接用 LOAD DATA INFILE;若为 TXT,则先转换成 CSV 或用 INSERT 语句批处理。
    LOAD DATA INFILE '/tmp/admin_codes.csv'
    INTO TABLE admin_division
    FIELDS TERMINATED BY ',' ENCLOSED BY '\"'
    LINES TERMINATED BY '\r
    '
    IGNORE 1 LINES
    COMMIT;<\/pre>
    如果你更习惯脚本方式,可参考 qqzeng.com 提供的 aera.sql 脚本:
    
    mysql -u root -p dbname "
    
  3. 验证完整性: 执行以下查询确认没有重复或空值。
    SELECT COUNT FROM admin_division WHERE Code IS NULL OR Code='';SELECT COUNT FROM admin_division;其实,<\/pre>"
    
  4. 建立索引与视图: 可以根据业务需要添加全文索引或视图。例如快速检索城市名称,说起来,
    CREATE VIEW city_view AS SELECT * FROM admin_division WHERE Level=3;<\/pre>"
    
  5. 完成!现在你已拥有可直接查询的中国地区编码数据库。 "

常用查询案例

  • SELECT * FROM admindivision WHERE ParentCode = '440000' AND Level = 4;<\/code>"
  • SELECT * FROM admin
  • division WHERE Name LIKE '北%';<\/code>"
  • SELECT CONCATWS(' / ',p.Name as Province,c.Name as City。d.Name as District) FROM admindivision d JOIN admindivision c ON d.ParentCode = c.Code JOIN admindivision p ON c.ParentCode = p.Code WHERE d.Code='310105';<\/code>" 注:以上查询假设已填充完整父子关系和等级字段。若缺失,请先运行上述导入脚本再尝试。" "

    定期更新策略与自动化脚本示例

    "每年国家统计局会发布新一版行政区划代码。为了保持数据实时性,你可以采用以下自动化流程:"

    中国地区编码数据库具体名称是什么?

  • "① 在 cron 或 Windows Task Scheduler 定时访问 stats.gov.cn 的下载页面;"
  • "② 下载最新 zip 包并解压;"
  • "③ 使用上面提供的 LOAD DATA 或 sql 脚本进行全量刷新;"
  • "④ 对比差异生成日志,用于审计与回滚。"
  • "⑤ 推送更新通知给相关团队。"

"以下 Bash 示例演示了自动更新过程:"

#!说起来,/bin/bash
# 每月第一天执行
URL=https://www.stats.gov.cn/.../admin_codes.zip
DEST=/data/admin_codes/
mkdir -p $DEST
# 下载 &>& 转存日志
curl -sL $URL -o $DEST/latest.zip>>$DEST/update.log 2>&1
# 解压并替换旧文件
unzip -o $DEST/latest.zip -d $DEST>>$DEST/update.log
# 重建数据库表
echo \"TRUNCATE TABLE admin_division;\") | mysql -u root -p dbname>&&
# 导入新数据
mysqlimport --ignore-lines=1 --fields-terminated-by=\",\" --fields-enclosed-by='\\\"' --local -u root dbname $DEST/*.csv

常见问题解答

\ \ \ \ \ \ \ \ \ \
问题 答案 
#1 如何判断自己手头的数据是否完整?对照国家统计局发布的原始 Excel 列表,核对省、市、县三级总数是否一致;检查是否存在空值或重复编码。不过,\ 如果发现缺失,可以通过官方 API 补全或者手动追加。\
#2 官方提供的是文本格式,我想直接在 Python 中读取该文件怎么办?Python 内置 csv 模块即可读取 UTF‑8 编码文本;若使用 pandas,可直接调用 pd.read_csv 并指定 delimiter、encoding 等参数。\ 例如:\ python\ import pandas as pd \ df = pd.read_csv\ \
#3 我只需要省份和市的信息。不需要乡镇,那么如何截取?可以在导入后执行 DELETE 或 CREATE VIEW,仅保留 level≤3 的记录。例如:\ sql\ DELETE FROM admin_division WHERE Level> 3;\ \
#4 如何在 GIS 软件中加载此数据库?将 MySQL 表导出为 shapefile 或 GeoJSON 再加载到 QGIS / ArcGIS;或者使用 OGR 支持的 JD娱乐 驱动直接连接 MySQL 并绘制地图。\ \
#5 有无社区维护的开源项目可直接部署?GitHub 上有诸如 china-administrative-divisions 的仓库。包含 SQL 脚本、REST API 示例还有前端组件,可一键部署到 Docker 容器中。\ \ \ <\/table

与行动建议

  • "把握好官方渠道获取最新代码,避免因付费版本带来的版权风险。"
  • "遵循标准化表结构和索引设计,让后续查询高效且易维护。"
  • "制定自动化更新脚本,即使是小型项目也能保持数据时效性。"
  • "结合 GIS 与 Web 前端。实现三级联动等功能,让使用者用起来更舒服。"
    <\/div>";}

标签:中国
老实说,

概述

中国地区编码数据库是政府、统计、邮政、教育、GIS 等领域必不可少的基础数据资源。它记录了从国家级到村级的五级行政区划信息。每个单位都有唯一的编码,便于层级查询与数据统一。

使用者痛点一览

  • 免费、全面的数据源稀缺,付费版本价格不透明。
  • 下载文件格式多样,不知哪种最适合导入数据库。
  • 缺乏标准化导入脚本,导致自行编写过程繁琐。说起来,
  • 更新周期不明确。担心使用过时的数据影响业务准确性。

获取最新编码文件

  1. 官方渠道:访问国家统计局官网,在“统计数据”或“行政区划”栏目下载最新版压缩包。文件一般为纯文本或 CSV 格式。
  2. 第三方网站:如 提供完整 MySQL/MSSQL 导入脚本与 SQL 文件;也可在 GitHub 搜索 “China administrative division code” 获取开源项目。

文件结构示例

# 行政区划编码 父ID 级别 名称 组合方法 110000,1 北京市 110100,110000,2 北京市 市辖区 110101,110100。3 东城区

中国地区编码数据库具体名称是什么?

创建数据库表结构

提示:下面的表结构适用于 MySQL,其他 RDBMS 可做轻微调整。

NameDescription
行政区划表
ID 主键,自增或使用编码字段作为主键。
|Code| CHAR | 主键,六位行政区划码。
|Name| VARCHAR|FullName| VARCHAR
|ParentCode| CHAR|Level| TINYINT
|Path| VARCHAR|PostalCode| CHAR 可选字段。不过,
使用树形结构存储。可通过父子关系快速检索层级方法。

创建表语句示例

CREATE TABLE admin_division (
Code CHAR NOT NULL PRIMARY KEY,Name VARCHAR NOT NULL。FullName VARCHAR,ParentCode CHAR,Level TINYINT NOT NULL,Path VARCHAR,PostalCode CHAR,CONSTRAINT fk_parent
FOREIGN KEY
REFERENCES admin_division
);ALTER TABLE admin_division ADD INDEX idx_parent;ALTER TABLE admin_division ADD INDEX idx_level;ALTER TABLE admin_division ADD INDEX idx_name;COMMIT,

导入数据库文件步骤

  1. 准备工作: - 确认已安装 MySQL 并能正常连接。- 将下载得到的 txt/CSV 文件放置在服务器可访问目录下。按理说,- 如果使用 Windows。可以用记事本检查编码是否为 UTF‑8,无 BOM。
  2. 批量导入示例: 若文件为 CSV,可直接用 LOAD DATA INFILE;若为 TXT,则先转换成 CSV 或用 INSERT 语句批处理。
    LOAD DATA INFILE '/tmp/admin_codes.csv'
    INTO TABLE admin_division
    FIELDS TERMINATED BY ',' ENCLOSED BY '\"'
    LINES TERMINATED BY '\r
    '
    IGNORE 1 LINES
    COMMIT;<\/pre>
    如果你更习惯脚本方式,可参考 qqzeng.com 提供的 aera.sql 脚本:
    
    mysql -u root -p dbname "
    
  3. 验证完整性: 执行以下查询确认没有重复或空值。
    SELECT COUNT FROM admin_division WHERE Code IS NULL OR Code='';SELECT COUNT FROM admin_division;其实,<\/pre>"
    
  4. 建立索引与视图: 可以根据业务需要添加全文索引或视图。例如快速检索城市名称,说起来,
    CREATE VIEW city_view AS SELECT * FROM admin_division WHERE Level=3;<\/pre>"
    
  5. 完成!现在你已拥有可直接查询的中国地区编码数据库。 "

常用查询案例

  • SELECT * FROM admindivision WHERE ParentCode = '440000' AND Level = 4;<\/code>"
  • SELECT * FROM admin
  • division WHERE Name LIKE '北%';<\/code>"
  • SELECT CONCATWS(' / ',p.Name as Province,c.Name as City。d.Name as District) FROM admindivision d JOIN admindivision c ON d.ParentCode = c.Code JOIN admindivision p ON c.ParentCode = p.Code WHERE d.Code='310105';<\/code>" 注:以上查询假设已填充完整父子关系和等级字段。若缺失,请先运行上述导入脚本再尝试。" "

    定期更新策略与自动化脚本示例

    "每年国家统计局会发布新一版行政区划代码。为了保持数据实时性,你可以采用以下自动化流程:"

    中国地区编码数据库具体名称是什么?

  • "① 在 cron 或 Windows Task Scheduler 定时访问 stats.gov.cn 的下载页面;"
  • "② 下载最新 zip 包并解压;"
  • "③ 使用上面提供的 LOAD DATA 或 sql 脚本进行全量刷新;"
  • "④ 对比差异生成日志,用于审计与回滚。"
  • "⑤ 推送更新通知给相关团队。"

"以下 Bash 示例演示了自动更新过程:"

#!说起来,/bin/bash
# 每月第一天执行
URL=https://www.stats.gov.cn/.../admin_codes.zip
DEST=/data/admin_codes/
mkdir -p $DEST
# 下载 &>& 转存日志
curl -sL $URL -o $DEST/latest.zip>>$DEST/update.log 2>&1
# 解压并替换旧文件
unzip -o $DEST/latest.zip -d $DEST>>$DEST/update.log
# 重建数据库表
echo \"TRUNCATE TABLE admin_division;\") | mysql -u root -p dbname>&&
# 导入新数据
mysqlimport --ignore-lines=1 --fields-terminated-by=\",\" --fields-enclosed-by='\\\"' --local -u root dbname $DEST/*.csv

常见问题解答

\ \ \ \ \ \ \ \ \ \
问题 答案 
#1 如何判断自己手头的数据是否完整?对照国家统计局发布的原始 Excel 列表,核对省、市、县三级总数是否一致;检查是否存在空值或重复编码。不过,\ 如果发现缺失,可以通过官方 API 补全或者手动追加。\
#2 官方提供的是文本格式,我想直接在 Python 中读取该文件怎么办?Python 内置 csv 模块即可读取 UTF‑8 编码文本;若使用 pandas,可直接调用 pd.read_csv 并指定 delimiter、encoding 等参数。\ 例如:\ python\ import pandas as pd \ df = pd.read_csv\ \
#3 我只需要省份和市的信息。不需要乡镇,那么如何截取?可以在导入后执行 DELETE 或 CREATE VIEW,仅保留 level≤3 的记录。例如:\ sql\ DELETE FROM admin_division WHERE Level> 3;\ \
#4 如何在 GIS 软件中加载此数据库?将 MySQL 表导出为 shapefile 或 GeoJSON 再加载到 QGIS / ArcGIS;或者使用 OGR 支持的 JD娱乐 驱动直接连接 MySQL 并绘制地图。\ \
#5 有无社区维护的开源项目可直接部署?GitHub 上有诸如 china-administrative-divisions 的仓库。包含 SQL 脚本、REST API 示例还有前端组件,可一键部署到 Docker 容器中。\ \ \ <\/table

与行动建议

  • "把握好官方渠道获取最新代码,避免因付费版本带来的版权风险。"
  • "遵循标准化表结构和索引设计,让后续查询高效且易维护。"
  • "制定自动化更新脚本,即使是小型项目也能保持数据时效性。"
  • "结合 GIS 与 Web 前端。实现三级联动等功能,让使用者用起来更舒服。"
    <\/div>";}

标签:中国