Obs136|3 個方法讓你用Obsidian QATT外掛讀取外部檔案

Query All The Things (QATT) 除了能用obsidian_markdown_notes、dataview_pages等資料表當做資料來源之外,也能指定儲存庫裡的其他檔案(CSV、Markdown或JSON格式)來當做資料來源,如此就能用SQL來對這些外部檔案做查詢,並透過Handlebars模板來輸出內容了。

操作步驟如下。

1. 建立資料表

我們必須把要操作的檔案在設定裡指定好,在Obsidian與QATT啟動時,會依檔案內第一行建立內部資料表。

下圖指定了兩個CSV格式的檔案,030_Inbox/visit_places.md 副檔名雖然是.md,但其內容是CSV格式。副檔名.md時就能使用Obsidian直接開啟與編輯。資料是即時呈現的,當你在外部新增資料後,Obsidian會立即顯示變動。

外部檔也能使用網址的形式,格式是:「WEB|資料表名稱|傳回資料的網址」,例如:WEB|test_posts|https://jsonplaceholder.typicode.com/posts
gh

2. QATT範例1

2.1. visit_places.md

第一行是欄位,注意:欄位逗點後不能有空白。

country,visit_date,visit_days
Japan日本, 2022-12-28, 10
USA, 2020-12-30, 14
Singapore, 2017-05-05, 7
Korea, 2018-01-02, 10

2.2. 查詢與輸出

query: |
  select country, visit_date, visit_days
  from visit_places
  order by visit_date
template: |
  | Country | Visit Date | Visit Days |
  |--|--|--:|
  {{#each result}}
  | {{country}} | {{visit_date}} | {{visit_days}} |
  {{/each}}
  • 輸出依visit_date排序

gh|500

[!TIP]+ 技巧
如果QATT顯示Table does not exist:錯誤時,進入QATT的程式碼區塊後再離開,應該就會重新渲染了

3. QATT範例2

透過網頁內容的設定格式是:WEB|test_posts|https://jsonplaceholder.typicode.com/posts,傳回的內容是:
gh|500

query: |
  select top 30 *
  from test_posts
template: |
  {{#each result}}
   - {{id}},{{title}}
  {{/each}}

4. 相關鏈接

5. 教學影片

https://youtu.be/sw1NiqawWlM

##

您可能也會有興趣的類似文章

您可能也會喜歡…

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *