乐于分享
好东西不私藏

笔记只是一堆文档?这款 Obsidian 插件,把你的库变成会自己统计的数据库

笔记只是一堆文档?这款 Obsidian 插件,把你的库变成会自己统计的数据库

Dataview 保姆级教案 | 从”打标签”到”写查询”,让你的笔记库自动汇报

你有没有过这种时刻——想数数”这个月到底读了几本书””哪个项目还差几个任务没做完”,结果在几十上百篇笔记里翻到眼花,最后放弃?今天这篇教案教你用 Dataview,把 Obsidian 从”文档仓库”变成”会自己算账的数据库”。以后不是你去找数据,而是让笔记主动把报表交上来

一、它到底牛在哪(先搞懂认知)

Dataview 的官方定义一句话概括:

“Run advanced queries over your vault.”对你的整个笔记库运行高级查询 —— 把 Vault 当数据库用。

它的核心思路是:给笔记加上结构化元数据(就像表格的字段),然后用一句”查询语言”把这些元数据捞出来,自动生成表格、列表、任务清单。

带元数据的笔记📄 书名Arating:: 9📄 书名Brating:: 7📄 书名Crating:: 8Dataview查询引擎自动汇总书名评分书名A9书名C8书名B7平均分 8.0

图 1 · 笔记(含元数据)→ 查询 → 自动汇总报表

二、为什么我敢推荐它(看价值)

  • 自动汇总
    读书清单、游戏库、任务进度,一个查询全出来,不用手动维护表格
  • 动态更新
    新增/修改笔记,报表实时跟着变,永不”过期”。
  • 灵活强大
    支持表格、列表、任务、分组排序,甚至写 JS 做复杂统计。
  • 零打扰
    只在你需要看报表时渲染,平时笔记干干净净。

三、安装步骤(跟着做,5 步)

  1. 开权限:
    Obsidian 设置 → 社区插件 → 关闭「安全模式」。
  2. 搜插件:
    点「浏览」,搜索 Dataview,作者认准 blacksmithgu
  3. 装启用:
    点「安装」,再点「启用」。
  4. 开渲染:
    在设置里确认「Enable JavaScript Queries」按需开启(普通查询不用开)。
  5. 看效果:
    新建一篇笔记,插入一个查询代码块,切到阅读模式即可看到结果。

四、先给笔记”打字段”(元数据怎么写)

Dataview 的数据来自两种地方:

① 文档头 Frontmatter(YAML)

在笔记最上方用 --- 包裹,写结构化字段:

yaml
---alias: "文档名"last-reviewed: 2021-08-17thoughts:  rating: 8  reviewable: false---

② 行内字段(Inline Fields)

不想写头部?直接在正文里用 Key:: Value 语法标注,更轻量:

markdown
基本信息:: 价值**加粗字段**:: 不错! 也可以写 [隐式字段:: 行内字段];一行能写多个 [字段2:: 内容]。

五、写第一条查询(DQL 入门)

插入一个 dataview 代码块(输入 ```dataview 回车),里面写查询。几个官方示例直接可用:

例 1:表格 —— 列出 games 文件夹的游戏,按评分降序

dataview
TABLE time-played, length, ratingFROM "games"SORT rating desc

例 2:列表 —— 所有 MOBA 或 CRPG 标签的笔记

dataview
LIST FROM #game/moba OR #game/crpg

例 3:任务 —— 活跃项目里还没做完的待办

dataview
TASK FROM #projects/active

💡 把 "games"#game/moba 换成你自己的文件夹或标签名即可。

六、进阶:行内查询 & DataviewJS

① 行内表达式(嵌在正文里)

用 = 在正文直接求值,阅读模式下会变成结果:

markdown
我们当前在页面 `= this.file.name`

② DataviewJS(会 JS 的玩家专属)

威力更大,能分组、循环、自定义渲染。例:列出所有未完成的任务:

dataviewjs
dv.taskList(   dv.pages().file.tasks.where(t => !t.completed) );

七、一个关键避坑(安全 & 渲染)

⚠ 重要提醒

  • 普通 DQL 查询是「沙箱」只读的
    ,不会改动你的笔记,放心用;
  • 但 DataviewJS / 行内 JS($=)权限等同普通插件,能改/删文件、发起网络请求——只运行你自己写的、或可信来源的代码;
  • 查询结果需要在阅读模式(或实时预览)下才显示,编辑模式里看到的是代码本身,这是正常的;
  • 字段名区分大小写,rating 和 Rating 不是一回事。

八、适合谁装

  • 用 Obsidian 管读书/影视/游戏/收藏清单的人;
  • 项目管理,想随时看任务进度的人;
  • 受够了手动维护表格、又想要”数据库感”的人。

📌 一句话总结

Dataview 让你的笔记从”死文档”变成”活数据库“——你只管写,统计交给它。如果你也在用 Obsidian 攒知识,不妨装来试试。

装好后,记得回来告诉我:你用 Dataview 做出了第一张什么报表?👇

#Obsidian#Dataview#知识管理#效率工具#插件推荐

(本号致力于知识的公益传播,后续将继续介绍相关领域的知识,敬请期待,如果觉得对您有用,请点赞、收藏、关注、推荐和转发,您的鼓励是我进一步创作的动力)