[Notion] 시작일 종료일 차이 구하기 - 수식으로 날짜 차이 구하기

작성일 :

개요


Notion 표에서 시작일 종료일간 날짜 간의 차이를 계산하는 방법은 두 가지가 있습니다. 하나는 표에 날짜(Date) 타입의 두개의 필드(시작일, 종료일) 모두 지정하여 그 차이를 계산하는 방법이고, 다른 하나는 Date 필드를 하나만 지정해서 해당 Date필드에 종료일을 지정한 후 하나의 필드를 이용해 날짜 차이를 계산하는 방법입니다.

하나의 필드를 사용하여 날짜를 계산하는 방법


아래는 작업과 해당 작업에 걸린 기간을 표시하는 간단한 예시입니다.

notionPost0101

위 예시처럼 타임라인을 활용하기 위해 하나의 날짜 필드에 시작일과 종료일을 지정하여 작업 기간을 표시하는 방법을 선호하시는 분이 많습니다. 이 방식은 타임라인을 활용할 수 있다는 장점이 있습니다.

하지만, 이렇게 하나의 필드에 두 개의 날짜를 넣으면, 날짜 필터링이 부정확하게 동작하고 수식을 사용하여 날짜를 계산하는 것이 다소 복잡해집니다.

notionPost0102 하나의 필드의 날짜를 계산하기 위해서는 세 개의 수식을 사용해야 하는데 위 예시와 같은 상황에서 작업일수의 수식은 아래와 같습니다.

text

dateBetween(end(prop("기간")), start(prop("기간")), "days")

위에서 end와 start 수식은 각각 종료일과 시작일을 나타내는 필드를 가리키는 함수이고, dateBetween 수식은 두 날짜 사이의 일 수를 계산하는 함수입니다. 이 함수는 시작일과 종료일이 포함된 두 개의 Date 필드를 인자로 받으며, 해당 날짜 간의 일 수를 반환합니다.

두 개의 필드를 사용하여 날짜를 계산하는 방법


notionPost0103

이 방식은 하나의 필드를 사용하는 방식보다 비교적 간단합니다. 아래의 수식을 사용하여 위 예시의 작업일수를 계산할 수 있습니다.

text

dateBetween(prop("종료일"), prop("시작일"), "days")

정리


Notion은 많은 사용자들에게 매우 유용한 작업 도구입니다. 하지만 저에게 노션은 점차 계륵같은 존재가 되어가고 있습니다. 원하는 방식으로 커스터마이징이 가능한 만큼, 원하는 대로 만들기 위해서는 학습 비용이 많이 필요하기 때문입니다.

저는 주로 task 관리 측면에서 notion을 사용하고 있는데 원하는 기능이 없거나 그 기능을 구현하려면 소위 말하는 꼼수를 써서 복잡하게 구현해야하는 경우가 많습니다. 그래서 가끔은 이정도 노력이면 직접 만들 수 있지 않을까 하는 의문이 들기도 합니다.

다음에 노션과 관련해서 포스트를 할 글은 "하나의 날짜 필드에 시작일과 종료일이 있을때 날짜 필터링하기" 입니다. 잘못된 정보가 있거나 더 좋은 방식이 있다면 댓글 부탁드립니다. 감사합니다.