기타

[NOTION] 노션 디데이 속성 추가하기(날짜 지남/오늘/~일 전)

_알파카 2023. 12. 12. 03:07
728x90

2023년이 지나가면서 연간 계획표를 만들고 싶어졌다. 

다른 속성 같은 경우에는 쉽게 할 수 있었는데, 디데이 속성의 경우에는 수식을 직접 입력해야 해서 꽤 어려웠다.  

특히 내가 원하는 형태는 위와 같은데.. 

지난 날짜는 "날짜 지남"으로, 오늘의 경우 "오늘"로, 00일 전의 일인 경우는 "00일 전"으로 표시하고 싶었다. 

 

먼저, + 버튼을 눌러 "수식" 속성을 추가한다. 

 

 

속성을 추가하고, "편집" 선택!

 

그럼 이렇게 수식을 입력할 수 있는 창이 뜨는데, 

 

if(equal(dateBetween(dateSubtract(dateSubtract(now(), hour(now()), "hours"), minute(now()), "minutes"), prop("날짜"), "days"), 0), "오늘", if(dateBetween(now(), prop("날짜"), "days") > 0, "날짜 지남", format(-dateBetween(now(), prop("날짜"), "days")+1)+"일 전"))

 

다음과 같은 수식을 복사해서 쓰면 된다! 

자세한 설명은.. 

# 첫 번째 케이스(오늘 날짜일 때)
if
   (equal(dateBetween(dateSubtract(dateSubtract(now(), hour(now()), "hours"), minute(now()), "minutes"), 날짜, "days"), 0), "오늘",
   
# 두 번째 케이스(날짜가 지났을 때) 
if(dateBetween(now(), 날짜, "days") > 0, "날짜 지남",

	# 세 번째 케이스(d-day)
   format(-dateBetween(now(), 날짜, "days")+1)+"일 전"))

 

다른 인터넷을 보고 했을 때는 "오늘"인 케이스를 처리하는게 까다로웠다. 

원래, 아래의 코드를 보고 했었는데

## 잘못된 코드
if(dateBetween(now(), prop("날짜"), "days") == 0, "오늘", if(dateBetween(now(), prop("날짜"), "days") > 0, format(dateBetween(now(), prop("날짜"), "days"))+ "날짜 지남", format(-dateBetween(now(), prop("날짜"), "days"))+"일 전"))

 

이렇게하면, 아래 사진처럼 바로 다음날도 오늘로 뜨기에, 오늘 날짜 처리하는 방법을 바꿨어야 했다! 오늘은 12월 12일인데, 12월 13일도 "오늘"로 나오는 것이었다! 좀 복잡하지만 여러 코드를 참고하여 직접 작성해 보았다. 

원하는대로 나오지 않은 모습...

 


 

최종적으로 원하는 형태로 나오는 것을 확인할 수 있다! 

 

끄읏-!

728x90