添加某一主题笔记列表——列表用法
添加某一主题笔记列表——列表用法
应用情景
对于具有多个主题的笔记,只列出包含其中一个主题的笔记
假定你正在阅读的这一篇笔记是有关跑步主题的笔记,同时还具有==健康、主题和 O321 - Dataview 系列==共计四个主题。对于这样的具有多个相关主题的笔记,如何只列出其中==跑步==一个主题的笔记,将其它三个主题排除在外呢?
如果使用如下代码
```dataview
LIST
FROM !"O321-Dataview"
FLATTEN 主题 as flattenedTopics
WHERE contains(this.主题, flattenedTopics)
AND file.name != this.file.name
```
则和本篇笔记的四个主题任何之一主题相同的笔记都会被列举出来,检索结果如下所示:
如果使用如下代码,即可列出主题为跑步, 健康, 主题, O321 - Dataview 系列的所有笔记及主题
```dataview
LIST without id file.link + "(属于 `"+ join(主题) + "`主题)"
FROM !"Obsidian"
FLATTEN 主题 as flattenedTopics
WHERE contains(this.主题, flattenedTopics)
AND file.name != this.file.name
```
结果如下
我们只想列出具有跑步主题的笔记,这显然不是我们想要的结果。因为在这个结果中还包含了另外三个主题的笔记。
使用下面的代码,就可以仅列出当前笔记所有主题之一的笔记列表。
仅列出主题为跑步的笔记
尽管当前笔记的主题有跑步, 健康, 主题, O321 - Dataview 系列,下面的结果中还是排除了有关==健康,主题和 O321 - Dataview 系列主题==的笔记
```dataview
LIST
FROM !"O321-Dataview"
FLATTEN 主题 as flattenedTopics
WHERE contains(flattenedTopics,"跑步")
AND file.name != this.file.name
```
讨论
若阁下有独到的见解或新颖的想法,诚邀您在文章下方留言,与大家共同探讨。
反馈交流
其他渠道
版权声明
版权声明:所有 PKMer 文章如果需要转载,请附上原文出处链接。