옵시디언 활용/Dataview

Dataview 기초: 인라인 쿼리(Inline Query)

반응형

Dataview의 작성 방법

Dataview 인라인 쿼리에 대해 알아보기 전에, Dataview의 작성방법의 종류에 대해 간단히 알아보겠습니다. Dataview를 작성할 수 있는 방법은 총 4가지가 있습니다.

DQL(Dataview Query Language)

```dataview
TABLE
file.name AS "File",
rating AS "Rating"
FROM #book
```

dataview의 기본적인 사용방법으로 SQL과 유사한 쿼리 언어를 사용합니다. 이전 시간에서 dataview 쿼리라고 했던 것은 다 DQL입니다.

Inline Query

`= this.file.name`는 이 노트의 제목이다.

Inline Query방식은 노트 사이에 넣을 수 있고, 미리 보기 모드에서도 작동합니다.

DataviewJS

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

Dataview 색인 및 일부 일반 렌더링 유틸리티에 대한 전체 액세스 권한을 제공하는 강력한 JavaScript API입니다. JavaScript가 쿼리 언어보다 훨씬 강력하므로, JavaScript를 알고 있는 경우 권장됩니다.

Inline JS Query

`$= dv.current().file.mtime`

Inline Query과 동일하게 노트 작성 중에 DataviewJS을 직접 포함할 수 있으며, Javascript 기능도 포함할 수 있습니다.

인라인 쿼리

인라인 쿼리는 노트 작성 과정에서 실시간으로 데이터를 분석하고 계산할 수있는 기능입니다. 문서의 내용에서 직접 함수를 호출하여 다양한 정보를 추출하거나 계산할 수 있습니다.

인라인 쿼리 사용 방법

`=this.file.name`
`=2+7`

인라인 쿼리는 백틱(`)으로 둘러싸인 특정 접두사(기본값은 `=`)를 넣어 사용합니다. 이 접두사는 Dataview설정에서 변경할 수 있습니다.

노트 지정자 this

`=this.file.name`
`=this.tags`

인라인 쿼리에서 `this` 는 현재 작성 중인 노트를 가리킵니다. 현재 노트의 메타데이터를 불러오거나, 특정 데이터를 처리할 수 있습니다.

다른 노트 호출

`[[노트이름]]`

다른 노트의 데이터를 인라인 쿼리로 호출하고 싶을 때는 `[[노트이름]]` 형식을 사용합니다.

`=[[노트이름]].file.name`
`=[[노트이름]].tags`

다른 노트의 메타데이터를 현재 문서 내에서 직접 조회할 수 있습니다.

함수 사용

`=date(today) - dur(1 week)`
`=round(16.555555)`
`=dateformat(date(today),"yyyy년 M월 d일")`

Dataview 함수는 인라인 쿼리에서 `=함수`형태로 사용 가능합니다.


 

반응형