Obsidian Dataview 查询示例

这些 Obsidian Dataview 示例适合想直接复制、粘贴并改造 DQL 的 Obsidian 用户。你可以从 TABLE、LIST 或 TASK 示例开始,再按自己的 vault 调整文件夹、标签、字段名和排序规则。

这个 Obsidian Dataview 示例合集覆盖 TABLE 仪表盘、LIST 索引和 TASK 任务复盘,并保留 Obsidian Dataview examples 这类英文关键词,方便按真实 vault 进行改造。

打开可视化 Dataview 查询构建器

如何使用这些 Dataview 查询示例

把示例粘贴到 Obsidian 笔记中的 dataview 代码块里。如果结果为空,先确认 Dataview 插件已启用,再检查文件夹路径和字段名。多数空结果都来自查询条件和 frontmatter 或 inline fields 不一致。

TABLE 示例

查询类型: TABLE

活跃项目看板

展示活跃项目笔记,隐藏已归档项目,并按截止日期排序下一步工作。

需要的字段: status, due

```dataview
TABLE file.link AS "Project", status, due
FROM "Projects"
WHERE status != "archived"
SORT due ASC
```

如何调整: 把 Projects 改成你的项目文件夹,并将 status 或 due 替换成你自己的 frontmatter 字段。

查询类型: TABLE

内容日历

追踪仍需发布的草稿、计划文章、视频或 newsletter。

需要的字段: stage, publish, channel

```dataview
TABLE file.link AS "Content", stage, publish, channel
FROM "Content"
WHERE stage != "published"
SORT publish ASC
LIMIT 12
```

如何调整: 可以使用 idea、draft、editing、scheduled、published 等 stage 值。

查询类型: TABLE

需要跟进的会议记录

查找 follow-up 字段尚未标记为完成的会议笔记。

需要的字段: date, followup, project

```dataview
TABLE date, project, followup
FROM "Meetings"
WHERE followup != "done"
SORT date DESC
```

如何调整: 如果你使用布尔字段,可以把条件改成 followup = false。

查询类型: TABLE

按阅读状态整理书籍笔记

从书籍笔记构建阅读追踪表,并按阅读状态排序未完成内容。

需要的字段: author, status, rating

```dataview
TABLE author, status, rating
FROM "Reading"
WHERE status != "finished"
SORT status ASC
```

如何调整: 如果阅读笔记里有 started 或 finished 日期字段,也可以把它们加入 TABLE 列。

查询类型: TABLE

缺少元数据的笔记

找出缺少必要字段、暂时不能进入仪表盘的笔记。

需要的字段: status

```dataview
TABLE file.folder, file.mtime
FROM "Projects"
WHERE status = null
SORT file.mtime DESC
```

如何调整: 把 status 替换成你想检查的必填字段,例如 owner、topic 或 priority。

查询类型: TABLE

高优先级事项

列出 priority 大于等于 3 的重要笔记或项目。

需要的字段: priority, due, status

```dataview
TABLE priority, due, status
FROM "Projects"
WHERE priority >= 3
SORT priority DESC
LIMIT 20
```

如何调整: 如果你的优先级体系是 1-5、low-medium-high 或其他规则,可以调整阈值。

LIST 示例

查询类型: LIST

最近更新的笔记

创建最近编辑笔记的简洁列表。

需要的字段: 不需要自定义字段

```dataview
LIST file.link
FROM "Notes"
SORT file.mtime DESC
LIMIT 20
```

如何调整: 建议使用较小的文件夹来源,避免把整个 vault 的笔记混在一起。

查询类型: LIST

带主题标签的研究笔记

列出属于某个研究主题标签的笔记。

需要的字段: 标签

```dataview
LIST file.link
FROM #research
SORT file.mtime DESC
```

如何调整: 把 #research 替换成你自己的标签,例如 #ai、#marketing 或 #book。

查询类型: LIST

日记索引

展示日记文件夹中的笔记,并让最新笔记排在前面。

需要的字段: 不需要自定义字段

```dataview
LIST file.link
FROM "Daily"
SORT file.name DESC
LIMIT 30
```

如何调整: 如果你的日记按日期命名,通常用 file.name 排序就能得到稳定结果。

查询类型: LIST

特定文件夹中带指定标签的笔记

先选择文件夹来源,再用标签过滤组合条件。

需要的字段: 标签

```dataview
LIST file.link
FROM "Notes"
WHERE contains(file.tags, "idea")
SORT file.mtime DESC
```

如何调整: 检查 file.tags 时,contains 里的标签文本不需要带 #。

TASK 示例

查询类型: TASK

开放项目任务

从项目笔记中收集未完成任务,并按截止日期排序。

需要的字段: completed, due

```dataview
TASK
FROM "Projects"
WHERE completed = false
SORT due ASC
```

如何调整: 如果你在任务行上添加 inline metadata,Dataview 任务查询可以读取任务级字段。

查询类型: TASK

习惯追踪任务

从日记笔记中复盘与习惯相关的任务。

需要的字段: 标签

```dataview
TASK
FROM "Daily"
WHERE contains(tags, "habit")
SORT file.path DESC
LIMIT 20
```

如何调整: 根据习惯记录所在位置,把来源改成 Daily、Journal 或 Logs 等文件夹。

查询类型: TASK

逾期任务复盘

查找截止日期早于今天且尚未完成的任务。

需要的字段: completed, due

```dataview
TASK
FROM "Projects"
WHERE completed = false AND due < date(today)
SORT due ASC
```

如何调整: 如果你的截止日期字段叫 deadline,可以把 due 替换成 deadline。

查询类型: TASK

会议后续任务

从会议笔记中收集开放任务,用于每周复盘。

需要的字段: completed

```dataview
TASK
FROM "Meetings"
WHERE completed = false
SORT file.mtime DESC
```

如何调整: 当会议行动项以 Markdown 任务写在会议笔记里时,可以使用这个查询。

Dataview 示例常见问题

这些示例可以直接复制到 Obsidian 中使用吗?

可以,每个查询都是有效的 DQL。将其粘贴到以 `dataview` 为语言的代码块中即可。

如何根据自己的 Vault 自定义查询?

点击任意示例上的「在构建器中打开」,调整筛选条件、FROM 路径和列以适配你的 Vault。

如果查询没有返回结果怎么办?

检查 FROM 子句中的文件夹路径或标签是否在你的 Vault 中存在,字段名是否与 frontmatter 完全匹配,以及 Dataview 插件是否已启用。

下一步