Access数据库快速入门——外部数据导入和SQL简单查询

以下是将外部数据(以最常见的 Excel 为例)导入 Microsoft Access 并使用 SQL 语言进行处理的完整流程:

📥 第一步:新建数据库并导入外部数据

  1. 新建空白数据库 :打开 Access 软件,点击"文件"-新建"空白数据库",在右侧输入文件名(例如 数据处理实践.accdb),点击"创建"。
  2. 找到导入入口 :在 Access 顶部菜单栏中,点击 "外部数据" 选项卡。
  3. 选择数据源 :根据你的文件类型点击对应的按钮:
    • 如果是 Excel 文件,点击 "新数据源" -> "从文件" -> "从 Excel"
    • 如果是文本/CSV 文件,点击 "新数据源" -> "从文件" -> "文本文件"
  4. 执行导入向导
    • 在弹出的窗口中,点击"浏览"找到你的外部文件。
    • 选择 "将源数据导入当前数据库的新表中",点击"确定"。
    • 关键设置 :在向导中,务必勾选 "第一行包含列标题"(这样 Access 会自动把你的 Excel 表头变成数据库字段名)。
    • 一路点击"下一步",最后点击"完成"。此时,你的外部数据就已经变成 Access 左侧导航栏里的一个"表"了。

💻 第二步:进入 SQL 编写界面

Access 提供了非常友好的图形化界面来编写和运行 SQL 语句:

  1. 点击顶部菜单栏的 "创建" 选项卡。
  2. 在"查询"功能区中,点击 "查询设计"
  3. 此时会弹出一个"添加表"的小窗口,直接点击"关闭" (不需要在这里手动添加表,我们直接用 SQL 语句来调用)。
  4. 在左上角(通常在"结果"或"视图"按钮附近),点击 "视图" 下拉菜单,选择 "SQL 视图"
  5. 现在,你面前空白的编辑区域就是编写 SQL 语句的地方了。

📝 第三步:编写并运行 SQL 语句处理数据

以下为模拟的销售表:

|----------|----------|------------|---------|---------|--------|--------|
| 订单ID | 用户ID | 日期 | 产品名 | 销售额 | 数量 | 地区 |
| ORD001 | U1007 | 2023-10-01 | 笔记本电脑 | 8999 | 1 | 北京 |
| ORD002 | U1020 | 2023-10-02 | 无线鼠标 | 129 | 2 | 上海 |
| ORD003 | U1015 | 2023-10-03 | 机械键盘 | 459 | 1 | 广州 |
| ORD004 | U1011 | 2023-10-04 | 显示器 | 2199 | 1 | 深圳 |
| ORD005 | U1008 | 2023-10-05 | 耳机 | 299 | 3 | 杭州 |
| ORD006 | U1021 | 2023-10-06 | 平板电脑 | 3299 | 1 | 成都 |
| ORD007 | U1007 | 2023-10-07 | 手机支架 | 49 | 5 | 武汉 |
| ORD008 | U1019 | 2023-10-08 | 充电宝 | 199 | 2 | 南京 |
| ORD009 | U1023 | 2023-10-09 | 智能手表 | 1599 | 1 | 西安 |
| ORD010 | U1011 | 2023-10-10 | 蓝牙音箱 | 399 | 1 | 重庆 |
| ORD011 | U1011 | 2023-10-11 | 笔记本电脑 | 8999 | 1 | 北京 |
| ORD012 | U1024 | 2023-10-12 | 无线鼠标 | 129 | 1 | 上海 |
| ORD013 | U1021 | 2023-10-13 | 机械键盘 | 459 | 2 | 广州 |
| ORD014 | U1004 | 2023-10-14 | 显示器 | 2199 | 1 | 深圳 |
| ORD015 | U1008 | 2023-10-15 | 耳机 | 299 | 1 | 杭州 |
| ORD016 | U1024 | 2023-10-16 | 平板电脑 | 3299 | 1 | 成都 |
| ORD017 | U1003 | 2023-10-17 | 手机支架 | 49 | 10 | 武汉 |
| ORD018 | U1022 | 2023-10-18 | 充电宝 | 199 | 3 | 南京 |
| ORD019 | U1021 | 2023-10-19 | 智能手表 | 1599 | 1 | 西安 |
| ORD020 | U1002 | 2023-10-20 | 蓝牙音箱 | 399 | 2 | 重庆 |
| ORD021 | U1024 | 2023-10-21 | 笔记本电脑 | 8999 | 1 | 北京 |
| ORD022 | U1012 | 2023-10-22 | 无线鼠标 | 129 | 1 | 上海 |
| ORD023 | U1006 | 2023-10-23 | 机械键盘 | 459 | 1 | 广州 |
| ORD024 | U1002 | 2023-10-24 | 显示器 | 2199 | 1 | 深圳 |
| ORD025 | U1021 | 2023-10-25 | 耳机 | 299 | 1 | 杭州 |

以下为模拟的用户表:

|----------|--------|--------|--------|------------|----------|
| 用户ID | 姓名 | 年龄 | 性别 | 注册时间 | 会员等级 |
| U1001 | 张伟 | 28 | 男 | 2022-01-15 | 黄金 |
| U1002 | 李娜 | 34 | 女 | 2021-05-20 | 白金 |
| U1003 | 王强 | 22 | 男 | 2023-02-10 | 普通 |
| U1004 | 刘芳 | 45 | 女 | 2020-11-05 | 钻石 |
| U1005 | 陈明 | 31 | 男 | 2022-07-18 | 黄金 |
| U1006 | 杨静 | 29 | 女 | 2023-01-22 | 普通 |
| U1007 | 赵军 | 38 | 男 | 2021-09-30 | 白金 |
| U1008 | 黄丽 | 26 | 女 | 2022-12-01 | 黄金 |
| U1009 | 周杰 | 33 | 男 | 2020-06-14 | 钻石 |
| U1010 | 吴敏 | 41 | 女 | 2021-03-25 | 白金 |
| U1011 | 徐刚 | 27 | 男 | 2023-04-12 | 普通 |
| U1012 | 孙艳 | 35 | 女 | 2022-08-09 | 黄金 |
| U1013 | 朱伟 | 30 | 男 | 2021-11-11 | 白金 |
| U1014 | 胡婷 | 24 | 女 | 2023-05-05 | 普通 |
| U1015 | 林峰 | 39 | 男 | 2020-10-20 | 钻石 |
| U1016 | 何兰 | 32 | 女 | 2022-02-14 | 黄金 |
| U1017 | 高远 | 29 | 男 | 2023-03-08 | 普通 |
| U1018 | 罗梅 | 43 | 女 | 2021-07-19 | 白金 |
| U1019 | 梁勇 | 36 | 男 | 2022-09-23 | 黄金 |
| U1020 | 宋佳 | 25 | 女 | 2023-06-17 | 普通 |
| U1021 | 唐杰 | 31 | 男 | 2021-12-12 | 白金 |
| U1022 | 韩雪 | 28 | 女 | 2022-04-30 | 黄金 |
| U1023 | 冯磊 | 37 | 男 | 2020-08-08 | 钻石 |
| U1024 | 曹颖 | 33 | 女 | 2023-01-01 | 普通 |
| U1025 | 彭亮 | 26 | 男 | 2022-11-11 | 黄金 |

一些简单的查询:

sql 复制代码
--各地区各月销售额
SELECT
    地区,
    Format(日期, "YYYYMM") AS 年月,
    sum(销售额) AS 总销售额
FROM
    销售表
GROUP BY
    地区,
    Format(日期, "YYYYMM");

--指定日期
SELECT 
    DateAdd("d", 1, Date()) AS a1,  -- 明天(在当前日期加1天)
    DateAdd("d", 0, Date()) AS a2,  -- 今天(加0天)
    DateAdd("d", -1, Date()) AS a3; -- 昨天(在当前日期减1天)

--日期间隔:计算 2026年5月1日 到 今天 相差20天
SELECT DateDiff("d", "2026-05-01", Date()) AS a1;
相关推荐
ElevenS_it1882 小时前
MySQL慢查询监控与告警实战:从slow_log采集到分钟级定位慢SQL的完整链路配置
android·sql·mysql
清平乐的技术专栏2 小时前
一文读懂Kafka中的“消费”(对标MySQL数据库)
数据库·mysql·kafka
i220818 Faiz Ul2 小时前
智慧养老平台|基于SprinBoot+vue的智慧养老平台系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·智慧养老平台
IT策士2 小时前
Django 从 0 到 1 打造完整电商平台:登录与登出功能实现
数据库·django·sqlite
程序边界2 小时前
标量子查询消除与向量化:一个被低估的协同效应
数据库
zero.cyx2 小时前
软件设计师(4)数据库
数据库
.小小陈.3 小时前
MySQL 高频考点:表连接与索引全解析
数据库
阳光九叶草LXGZXJ3 小时前
达梦数据库-学习-57-读写数据页超时告警排查(page[x,x,xxxxxx] disk write uses)-DSC集群版
linux·运维·服务器·数据库·sql·学习
Omics Pro3 小时前
前沿学科:量子生物学!
大数据·数据库·人工智能·windows·redis·量子计算