使用 obsidian tasks 进行简单查询
本文将简单介绍如何使用obsidian tasks进行简单查询。
说明
tasks用户指南:https://publish.obsidian.md/tasks/Introduction
本文使用的tasks版本为:7.18.3
obsidian tasks允许在obsidian仓库中的任何地方创建任务,并且在任何地方查询任务、且更新修改等,其查询非常强大。
在查询中,需要将查询语句添加到tasks中,例如:
如果需要添加注释,则直接在前面添加#即可,例如:
前置说明
- 在看本篇文章的时候,默认已经学会了
tasks基本操作,包括创建任务、结束任务、修改任务等等。 -
需要理解
due、start、scheduled等名词含义等。 -
需要知道关于
bool运算符含义,比如AND、OR、NOT等。
简单查询
查询所有任务
直接使用tasks便可以查看所有任务,包括已经结束、取消了的。
查询未结束的任务
在查询语句中,加上not done,即可查询未被结束、取消的任务。
查询已经结束的任务
在查询语句中,加上done,即可查询已经结束,或者被取消的任务。
查询被取消的任务
在查询语句中,加上has cancelled date,该语句的含义是cancelled必须有值,该操作即可查询被取消的任务。
以树类型展示任务
如果有树类型任务,可加上show tree来展示层次关系。
例如,有树类型任务如下:
| Text Only | |
|---|---|
使用show tree可以展示类型,比如:
其结果为:

关于时间的查询
在tasks中,关于时间的查询,其中关键字如下:
in x:
将匹配x日期。
before x:
将匹配x日期之间的所有日期。
after x:
将匹配x日期之后的所有日期。
in or before x:
将匹配x日期之前的所有日期,包括x。
in or after x:
将匹配x日期之后的所有日期,包括x。
看起来确实很难理解,但是我将其做成了一张表,如下:

其中:
-
其中
in 2025-03-10只能匹配到一个任务。 -
before 2025-03-10可以匹配到2025-03-10之前的所有任务,但是不包含2025-03-10。 -
after 2025-03-10可以匹配到2025-03-10之后的所有任务,但是不包含2025-03-10。 -
in or before 2025-03-10可以匹配到2025-03-10之前的所有任务,包含2025-03-10。 -
in or after 2025-03-10可以匹配到2025-03-10之后的所有任务,包含2025-03-10。
tasks也有自己相对日期的词,如下:
today: 今天tomorrow: 明天yesterday: 昨天-15 days:15天前+15 days:15天后next week:下周一last week:上周一this week:本周一
有了上述铺垫,查询起来就简单多了。
查询本周内没有完成的任务
直接查询下周一之前,但是不包含下周一即可,查询语句:
该查询语句会查询到开始时间start为下周一之前的所有任务,包括过去的任务,比如今天是2025-03-10,恰好2025-03-09也有任务且状态没有完成,那么也会被查询出来。
查询今天之前没有完成的任务
查询语句如下:
该查询语句会查询开始时间在今天之前(不包含今天)为完成的任务。
你还可以这样写:
查询本周内完成的任务
该查询语句是一条组合语句:
-
done: 表示已经完成了的任务 -
(starts before next week) AND (starts in or after last week):
表示开始时间在下周一之前和和本周一(包含本周一)之后。
查询已经过期且截止日期在7天内的未做的任务
该查询语句和上述类似,这里不解释了。
查询所有 start 在过去 1 个月但 due 在未来 1 个月,priority 是 medium 或 high,且 tags 只能包含 #work 或 #study,不能包含 #personal,同时 scheduled 不为空的任务
| Text Only | |
|---|---|
starts after last 1 month:开始时间在上个月之后。due before next 1 month: 截止时间在下一个之前。(priority is medium) OR (priority is high): 优先级为medium或者为high。(tags include #work) OR (tags include #study):tags为#work或者是#study。has scheduled date:scheduled必须有值。tags do not include #personal:tags不包含#personal。
总结
最近在使用tasks,实在是太方便了,随时随地都可以创建任务,然后查询过程中,都会被收集起来,只是新建看板查询任务列表过于繁琐,需要自己编写查询语句,不过在短暂的学习之后,使用起来非常得心应手。
使用 obsidian tasks 进行简单查询
https://wangli2025.github.io/2025/03/19/obsidian_tasks_01.html
本站均为原创文章,采用 CC BY-NC-ND 4.0 协议。转载请注明出处,不得用于商业用途。