适合谁:会计人、财务从业者,想用 SQL 处理 Excel 数据但不知道从哪开始的读者。

核心场景:导入 Excel → SQL 查询分析 → 导出结果回 Excel。全程图形化操作,无需记忆代码。


很多会计同事处理数据时,还在用 Excel 的筛选+透视表。但数据量大、逻辑复杂时,SQL 更高效。关键是:会计人不需要装一堆开发工具,一个 DBX 就够了。

DBX 是一款免费的 SQLite 数据库管理工具,图形界面全中文,支持 Excel 直接导入,导出结果也可一键回到 Excel。下面把最常用的操作按顺序整理。


一、连接与数据库管理

1. 新建独立数据库(推荐,永久生效)

这是最稳妥的建库方式,避免路径和权限的坑。

步骤:

  1. 左侧连接栏顶部点击 "+" 新建连接
  2. 选择「SQLite」→ 点击下一步
  3. 选择「创建新数据库文件」→ 浏览选择保存路径、输入文件名(如 Practice.db)
  4. 自定义连接名称(方便和其他库区分)→ 点击「完成」

💡 保存路径建议:选一个你经常访问的文件夹(如桌面或文档),避免放到系统盘深层目录,以后找起来方便。

2. 附加临时数据库(同窗口跨库用)

适合需要在当前连接里临时加一个库、做跨库联表查询的场景。

步骤:

  1. 顶部点击「新建查询」,确保是目标连接的查询窗口
  2. 执行语句:
    ATTACH DATABASE 'D:/xxx/库名.db' AS 库别名;
    
  3. 右键左侧数据库树 → 点击「刷新」,即可看到新增的库

注意:关闭连接后自动失效,下次打开需重新执行。

3. 编辑连接属性

右键左侧对应连接 → 选择「编辑连接」,可修改数据库文件路径、超时设置、开启/关闭只读模式。


二、表结构操作

1. 图形化新建表

  1. 展开目标数据库 → 右键「表」节点 → 选择「新建表」
  2. 点击 “+” 列,依次填写列名、选择数据类型、设置主键/非空等约束
  3. 顶部输入表名 → 点击「保存」

💡 数据类型选择:会计数据里,凭证号、科目代码这类字段请选 TEXT,不要选数字类型,否则前导零会丢失。

2. 修改表结构

右键对应表名 → 选择「编辑表」,即可增删字段、修改数据类型、调整约束。

3. 查看/删除表

  • 双击表名:快速浏览表内全部数据
  • 右键表名 → 「删除表」:确认后永久删除表和数据,谨慎操作

三、数据导入导出(核心场景)

1. Excel 导入生成新表

这是会计人最常用的功能——把 Excel 数据直接变成 SQLite 表,之后就可以用 SQL 查了。

入口任选其一:

  • 右键目标数据库 → 选择「导入数据」
  • 直接把本地 Excel 文件拖拽到 DBX 主窗口

步骤:

  1. 选择「创建新表」→ 下一步
  2. 选中 Excel 文件 → 下拉选择要导入的工作表
  3. 设置标题行号(默认第 1 行是表头)、数据起始行,可开启「去除首尾空格」→ 下一步
  4. 核对列名、数据类型,不需要的列可勾选跳过 → 下一步
  5. 确认设置 → 点击「执行」,完成后刷新即可看到新表

💡 常见坑:导入前请确保 Excel 文件已关闭,否则可能因文件占用导致读取失败。

2. 表数据导出到 Excel/CSV

分析完数据后,把结果导回 Excel 继续汇报或存档。

步骤:

  1. 右键目标表 → 选择「导出数据」
  2. 选择导出格式(Excel / CSV)→ 下一步
  3. 选择导出全部列或指定列,可自定义筛选条件 → 下一步
  4. 选择保存路径、设置文件名 → 点击「执行」

四、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 新手,建议按这个顺序学习:

  1. 先跑通流程:导入一张 Excel 表 → 写一条 SELECT → 导出结果,建立信心
  2. 掌握 SELECT 基础:WHERE 过滤、GROUP BY 分组、聚合函数(SUM/COUNT/AVG)
  3. 学习 JOIN:多表关联是会计数据分析的核心能力
  4. 进阶子查询:用嵌套查询处理更复杂的逻辑

配套文章:SQL必知必会全书5张核心表介绍 — 练习用数据库结构


本文作者:虑得先生