适合谁:会计人、财务从业者,想用 SQL 处理 Excel 数据但不知道从哪开始的读者。
核心场景:导入 Excel → SQL 查询分析 → 导出结果回 Excel。全程图形化操作,无需记忆代码。
很多会计同事处理数据时,还在用 Excel 的筛选+透视表。但数据量大、逻辑复杂时,SQL 更高效。关键是:会计人不需要装一堆开发工具,一个 DBX 就够了。
DBX 是一款免费的 SQLite 数据库管理工具,图形界面全中文,支持 Excel 直接导入,导出结果也可一键回到 Excel。下面把最常用的操作按顺序整理。
一、连接与数据库管理
1. 新建独立数据库(推荐,永久生效)
这是最稳妥的建库方式,避免路径和权限的坑。
步骤:
- 左侧连接栏顶部点击 "+" 新建连接
- 选择「SQLite」→ 点击下一步
- 选择「创建新数据库文件」→ 浏览选择保存路径、输入文件名(如
Practice.db) - 自定义连接名称(方便和其他库区分)→ 点击「完成」
💡 保存路径建议:选一个你经常访问的文件夹(如桌面或文档),避免放到系统盘深层目录,以后找起来方便。
2. 附加临时数据库(同窗口跨库用)
适合需要在当前连接里临时加一个库、做跨库联表查询的场景。
步骤:
- 顶部点击「新建查询」,确保是目标连接的查询窗口
- 执行语句:
ATTACH DATABASE 'D:/xxx/库名.db' AS 库别名; - 右键左侧数据库树 → 点击「刷新」,即可看到新增的库
注意:关闭连接后自动失效,下次打开需重新执行。
3. 编辑连接属性
右键左侧对应连接 → 选择「编辑连接」,可修改数据库文件路径、超时设置、开启/关闭只读模式。
二、表结构操作
1. 图形化新建表
- 展开目标数据库 → 右键「表」节点 → 选择「新建表」
- 点击 “+” 列,依次填写列名、选择数据类型、设置主键/非空等约束
- 顶部输入表名 → 点击「保存」
💡 数据类型选择:会计数据里,凭证号、科目代码这类字段请选 TEXT,不要选数字类型,否则前导零会丢失。
2. 修改表结构
右键对应表名 → 选择「编辑表」,即可增删字段、修改数据类型、调整约束。
3. 查看/删除表
- 双击表名:快速浏览表内全部数据
- 右键表名 → 「删除表」:确认后永久删除表和数据,谨慎操作
三、数据导入导出(核心场景)
1. Excel 导入生成新表
这是会计人最常用的功能——把 Excel 数据直接变成 SQLite 表,之后就可以用 SQL 查了。
入口任选其一:
- 右键目标数据库 → 选择「导入数据」
- 直接把本地 Excel 文件拖拽到 DBX 主窗口
步骤:
- 选择「创建新表」→ 下一步
- 选中 Excel 文件 → 下拉选择要导入的工作表
- 设置标题行号(默认第 1 行是表头)、数据起始行,可开启「去除首尾空格」→ 下一步
- 核对列名、数据类型,不需要的列可勾选跳过 → 下一步
- 确认设置 → 点击「执行」,完成后刷新即可看到新表
💡 常见坑:导入前请确保 Excel 文件已关闭,否则可能因文件占用导致读取失败。
2. 表数据导出到 Excel/CSV
分析完数据后,把结果导回 Excel 继续汇报或存档。
步骤:
- 右键目标表 → 选择「导出数据」
- 选择导出格式(Excel / CSV)→ 下一步
- 选择导出全部列或指定列,可自定义筛选条件 → 下一步
- 选择保存路径、设置文件名 → 点击「执行」
四、SQL 编辑器常用操作
| 操作 | 操作方式 |
|---|---|
| 新建查询 | 顶部工具栏点击「新建查询」,快捷键 Ctrl+N |
| 运行全部语句 | 点击左上角绿色 ▶️ 按钮,快捷键 Ctrl+Enter |
| 运行选中语句 | 鼠标框选部分 SQL 代码 → 点击运行,仅执行选中内容 |
| 结果数据复制 | 选中结果表格 → 右键「复制」,可直接粘贴到 Excel |
| 结果快速排序 | 点击结果表的列名,即可切换升序/降序 |
五、常见报错速查
1. ATTACH 报错 “unable to open database”
排查清单:
- 路径必须写到具体
.db文件名,不能只写文件夹 - 确认上级文件夹已提前创建(SQLite 不会自动创建文件夹)
- 尝试以管理员身份运行 DBX
- 优先改用「新建独立连接」的方式建库(避开这个坑)
2. Excel 导入失败
排查清单:
- 检查表头行号、数据起始行是否设置正确
- 关闭正在打开的 Excel 文件,避免文件占用导致读取失败
- 检查同一列是否存在混合数据类型(比如既有数字又有文本)
3. 新建的库/表左侧不显示
右键左侧数据库树 → 点击「刷新」,界面不会自动同步更新。
六、会计人常用 SQL 场景速查
有了数据库和表,接下来就是写 SQL 查询。以下是会计人最高频的几种查询场景:
场景 1:简单汇总(替代 Excel 透视表)
-- 按科目汇总发生额
SELECT 科目代码, 科目名称, SUM(借方金额) AS 借方合计, SUM(贷方金额) AS 贷方合计
FROM 凭证表
GROUP BY 科目代码, 科目名称;
场景 2:查找异常数据
-- 找借贷不平的凭证
SELECT 凭证号, 摘要, 借方金额, 贷方金额,
ABS(借方金额 - 贷方金额) AS 差额
FROM 凭证表
WHERE ABS(借方金额 - 贷方金额) > 0.01;
场景 3:多表关联(凭证 + 明细)
-- 凭证表 JOIN 明细表,查某月全部业务
SELECT p.凭证号, p.日期, p.摘要, m.科目名称, m.金额
FROM 凭证表 p
JOIN 科目明细 m ON p.凭证号 = m.凭证号
WHERE p.日期 BETWEEN '2026-01-01' AND '2026-01-31';
七、学习路线建议
如果你是 SQL 新手,建议按这个顺序学习:
- 先跑通流程:导入一张 Excel 表 → 写一条 SELECT → 导出结果,建立信心
- 掌握 SELECT 基础:WHERE 过滤、GROUP BY 分组、聚合函数(SUM/COUNT/AVG)
- 学习 JOIN:多表关联是会计数据分析的核心能力
- 进阶子查询:用嵌套查询处理更复杂的逻辑
配套文章:SQL必知必会全书5张核心表介绍 — 练习用数据库结构
本文作者:虑得先生