Files
ledgerly-docs/guide/sql-query.md
T
rosercode 923d6db5c0 docs: 同步汇账最新功能,新增智能查数、账单关系等文档
对照 ledgerly 自文档上次更新以来的全部改动,补充新功能文档、修正品牌与版本残留,并新增下载与安装页;配图已重新截取并上传 OSS,本地截图目录不纳入版本管理。

变更内容:
- 新增「智能查数」「账单关系」两个使用文档页,并登记侧边栏与总览
- 设置页扩充为八个面板(账号安全、数据库实时进度、外观、导航等)并改为即时保存
- 收支记录补充关系列、批量操作、AI 搜索浮窗、可配置分页与「账单详情」弹窗
- 统计面板补充饼图/渠道图下钻与筛选双向联动;规则管理补充批量删除
- AI 能力补充智能查数与关系命名;新增下载与安装页
- 开发文档同步:AI 13 类调用、数据模型 24 张表、API、前端偏好、构建部署
- 统一「汇账 Ledgerly」品牌与「设置/日志」菜单文案,版本号对齐 0.1
- 截图脚本新增账单详情等场景并更新登记

说明:
- download.md 的 OSS 下载链接保持待发布产物回填,暂不调整
- 已通过 npm run docs:build 与 npm run typecheck:scripts
2026-09-26 21:57:38 +08:00

3.3 KiB
Raw Blame History

智能查数

「智能查数」让你用自然语言直接查询账本,由 AI 生成一条只读 SQL 并执行,结果以统计卡片、表格或图表展示,无需自己拼筛选条件。

这是与统计面板的「AI 搜索」不同的能力:AI 搜索是「自然语言 → 统计面板筛选条件」,智能查数则是「自然语言 → SQL 查询」,适合更自由、更灵活的问答。

入口与前提

  • 先在设置中启用 AI 并配置 API Key。
  • 启用后,左侧菜单会出现「智能查数」(未启用时不显示)。
  • 直接访问路由 /smart-query 也可进入。

智能查数

提问

在页面顶部的输入框用一句自然语言描述想查的内容,例如:

  • 上个月一共花了多少钱
  • 按分类统计今年的支出
  • 今年收入最高的一个月
  • 各渠道的支出占比
  • 本月支出最高的 5 笔

输入框支持多行(自动增高),点击「查询」或按 Ctrl + Enter(Mac 为 ⌘ + Enter)提交;页面也会给出示例问题,点击即可直接查询。

结果展示

系统会根据查询结果自动选择展示方式:

结果形态 展示
只有一行 统计卡片,逐项展示各列的数值
多行且含数值列 动态表格,可切换为柱状图或饼图
多行但无数值列 表格
  • 结果中的渠道列会自动显示渠道名称(含自定义渠道),而不是内部编码。
  • 结果最多返回 1000 行;超过时会提示「仅展示前 1000 行」。
  • 无结果的查询会显示空态提示。

生成的 SQL

查询结果上方会给出 AI 生成的 SQL,默认折叠:

  • 使用 sql-formatter 缩进、highlight.js 语法高亮,便于阅读。
  • 可点「复制 SQL」把格式化后的语句复制到剪贴板。
  • 同时展示对查询意图的简要说明。

历史提问

页面下方是历史提问折叠面板,按账号在服务端持久化:

  • 展示提问内容与时间(精确到分钟),默认展示最近若干条。
  • 支持按关键字搜索历史。
  • 点击某条历史可回填并立即重新查询;也可复制该次提问。
  • 可一键清空历史。

当前会话内的提问与结果会缓存在浏览器会话中,切换账号时自动清除;结果超过 500 行时只缓存提问与视图,避免占用过多空间。

安全与隐私

智能查数始终以只读方式访问你自己的数据:

  • 仅允许单条 SELECT 查询,拒绝任何写操作、DDL、多语句、SELECT INTO、FOR UPDATE 与危险函数。
  • 只能查询系统白名单内的数据表,且每张表都会被强制注入当前用户的隔离条件,只能看到本人数据。
  • 查询不返回原始数据(rawData)与交易号等敏感字段。
  • 生成的 SQL 会经过安全网关校验后才执行,并限制执行时间与返回行数。

AI 本身收到的信息仅为你的自然语言提问与可查询的表结构说明,不包含账单原始字段。

相关