본문 바로가기
디지털스킬

노션 공식(Formula) 완전정복 - 계산부터 조건문까지 실전 예시로 마스터하기 [2025년 최신판]

by 지혜만땅 2025. 6. 3.

노션공식 계산부터 조건문까지

노션의 공식(Formula) 기능은 데이터베이스를 단순한 표에서 강력한 자동화 도구로 변화시켜주는 핵심 기능입니다. 2025년 현재, 노션은 더욱 강화된 공식 기능과 새로운 함수들을 제공하고 있어, 복잡한 계산부터 조건부 로직까지 모든 것을 자동화할 수 있습니다.

목차

  1. 노션 공식이란 무엇인가?
  2. 기본 문법과 구조 이해하기
  3. 필수 함수 완전 정복
  4. 실전 예시로 배우는 공식 활용법
  5. 고급 공식 테크닉
  6. 2025년 신규 기능 및 업데이트
  7. 자주 발생하는 오류와 해결법

노션 공식이란 무엇인가?

노션 공식(Formula)은 데이터베이스의 속성 값들을 기반으로 자동 계산을 수행하는 기능입니다. 엑셀의 함수와 비슷하지만, 노션만의 독특한 문법과 강력한 기능을 제공합니다.

노션 공식의 핵심 장점

  • 자동 계산: 다른 속성 값이 변경되면 자동으로 재계산
  • 조건부 로직: if문을 사용한 복잡한 조건 처리
  • 텍스트 조작: 문자열 결합, 분할, 변환 등
  • 날짜 계산: 기간 계산, 날짜 형식 변환
  • 수학 연산: 기본 사칙연산부터 고급 수학 함수까지

기본 문법과 구조 이해하기

1. 속성 참조 방법

 
javascript
prop("속성명")

노션에서 다른 속성의 값을 참조할 때 사용하는 기본 문법입니다.

예시:

 
javascript
prop("가격") * prop("수량")

2. 기본 연산자

연산자의미예시

+ 덧셈 prop("A") + prop("B")
- 뺄셈 prop("총액") - prop("할인")
* 곱셈 prop("단가") * prop("개수")
/ 나눗셈 prop("총점") / prop("과목수")
== 같음 prop("상태") == "완료"
!= 다름 prop("타입") != "임시"
> 초과 prop("점수") > 80
>= 이상 prop("나이") >= 18

3. 논리 연산자

 
javascript
and(조건1, 조건2)  // 그리고
or(조건1, 조건2)   // 또는
not(조건)          // 부정

필수 함수 완전 정복

1. 조건문 함수 (if)

가장 많이 사용되는 핵심 함수입니다.

 
javascript
if(조건, 참일때값, 거짓일때값)

실전 예시:

 
javascript
// 점수에 따른 등급 매기기
if(prop("점수") >= 90, "A", 
  if(prop("점수") >= 80, "B", 
    if(prop("점수") >= 70, "C", "D")))

// 마감일 임박 알림
if(prop("마감일") - now() <= 3, "🔥 긴급", 
  if(prop("마감일") - now() <= 7, "⚠️ 주의", "✅ 여유"))

2. 텍스트 처리 함수

concat() - 문자열 결합

 
javascript
concat("안녕", " ", "세상")  // "안녕 세상"
concat(prop("성"), prop("이름"))  // 성명 결합

format() - 형식화된 텍스트

 
javascript
format(prop("이름") + "님의 점수는 " + prop("점수") + "점입니다.")

slice() - 문자열 자르기

 
javascript
slice(prop("전화번호"), 0, 3)  // 앞 3자리만
slice(prop("이메일"), 0, length(prop("이메일")) - 10)  // 도메인 제거

3. 수학 함수

round(), ceil(), floor() - 반올림 함수

 
javascript
round(prop("평균"), 2)    // 소수점 2자리 반올림
ceil(prop("일수") / 7)    // 주수 계산 (올림)
floor(prop("총액") / 1000) // 천원 단위 (내림)

abs(), min(), max() - 절댓값과 최값

 
javascript
abs(prop("수입") - prop("지출"))      // 손익 절댓값
min(prop("목표"), prop("실적"))       // 최솟값
max(0, prop("수익") - prop("비용"))   // 양수만 표시

4. 날짜 함수

now() - 현재 시간

 
javascript
now()                    // 현재 시간
prop("마감일") - now()   // 남은 시간 (일 단위)

formatDate() - 날짜 형식화

 
javascript
formatDate(prop("생성일"), "YYYY년 MM월 DD일")
formatDate(now(), "YYYY-MM-DD")

dateAdd(), dateSubtract() - 날짜 계산

 
javascript
dateAdd(prop("시작일"), 30, "days")     // 30일 후
dateSubtract(prop("마감일"), 1, "weeks") // 1주일 전

실전 예시로 배우는 공식 활용법

1. 스마트 가계부 시스템

수입/지출 분류 자동화

 
javascript
// 거래 유형 자동 분류
if(prop("금액") > 0, "💰 수입", "💸 지출")

// 잔액 계산
prop("이전잔액") + prop("금액")

// 예산 대비 지출률
round((prop("이번달지출") / prop("예산")) * 100, 1) + "%"

월별 통계 자동 생성

 
javascript
// 월별 저축률
if(prop("월수입") > 0, 
  round(((prop("월수입") - prop("월지출")) / prop("월수입")) * 100, 1) + "%", 
  "0%")

// 절약 목표 달성도
if(prop("목표지출") > 0,
  if(prop("실제지출") <= prop("목표지출"), "🎯 달성", "⚠️ 초과"),
  "목표 미설정")

2. 프로젝트 관리 시스템

진행률 자동 계산

 
javascript
// 작업 완료율
if(prop("전체작업") > 0, 
  round((prop("완료작업") / prop("전체작업")) * 100, 0) + "%", 
  "0%")

// 프로젝트 상태 자동 업데이트
if(prop("진행률") == 100, "✅ 완료",
  if(prop("마감일") < now(), "🔴 지연",
    if(prop("진행률") >= 50, "🟡 진행중", "🔵 시작")))

팀원별 업무량 분석

 
javascript
// 업무 부하도
if(prop("할당작업수") <= 3, "😊 여유",
  if(prop("할당작업수") <= 5, "😐 적당",
    if(prop("할당작업수") <= 7, "😰 많음", "🔥 과부하")))

// 예상 완료일
dateAdd(now(), prop("남은작업수") * 2, "days")

3. 독서 관리 시스템

독서 통계 자동화

 
javascript
// 독서 속도 계산 (페이지/일)
if(prop("독서일수") > 0, 
  round(prop("총페이지") / prop("독서일수"), 1), 
  0)

// 독서 등급
if(prop("평점") >= 9, "⭐ 최고",
  if(prop("평점") >= 7, "👍 좋음",
    if(prop("평점") >= 5, "😐 보통", "👎 별로")))

// 장르별 선호도
concat(prop("장르"), " (", 
       round((prop("해당장르독서량") / prop("총독서량")) * 100, 0), 
       "%)")

고급 공식 테크닉

1. 중첩 조건문 마스터하기

복잡한 비즈니스 로직을 구현할 때 사용하는 고급 기법입니다.

 
javascript
// 복합 할인율 계산
if(prop("회원등급") == "VIP",
  if(prop("구매금액") >= 100000, 20,
    if(prop("구매금액") >= 50000, 15, 10)),
  if(prop("회원등급") == "골드",
    if(prop("구매금액") >= 100000, 15,
      if(prop("구매금액") >= 50000, 10, 5)),
    if(prop("구매금액") >= 100000, 10, 0)))

2. 정규식과 고급 텍스트 처리

 
javascript
// 이메일 도메인 추출
slice(prop("이메일"), 
      test(prop("이메일"), "@") + 1, 
      length(prop("이메일")))

// 전화번호 형식화
if(length(prop("전화번호")) == 11,
  concat(slice(prop("전화번호"), 0, 3), "-",
         slice(prop("전화번호"), 3, 7), "-",
         slice(prop("전화번호"), 7, 11)),
  prop("전화번호"))

3. 관계형 데이터베이스 활용

 
javascript
// 관련 데이터 자동 집계
prop("주문내역").map(current.prop("금액")).sum()

// 조건부 필터링 후 계산
prop("거래내역").filter(current.prop("타입") == "수입").map(current.prop("금액")).sum()

2025년 신규 기능 및 업데이트

2025년 노션의 주요 업데이트 사항들을 반영한 새로운 기능들입니다:

1. AI 통합 기능

노션이 새로운 AI 기반 기능을 대거 탑재한 'Notion AI for Work'를 공식 출시하며, 공식에서도 AI 기능을 활용할 수 있게 되었습니다.

 
javascript
// AI 기반 텍스트 분석 (예시)
ai_sentiment(prop("고객리뷰"))     // 감정 분석
ai_summary(prop("회의록"))         // 자동 요약
ai_translate(prop("내용"), "EN")   // 번역

2. 향상된 검색 기능

통합된 검색 경험으로 노션과 다른 도구들을 빠르게 검색하고 요약할 수 있는 기능이 추가되어, 공식에서도 더 강력한 데이터 검색이 가능합니다.

3. 새로운 차트 기능

노션 차트 기능이 출시되어, 공식 결과를 시각적으로 표현할 수 있습니다.

 
javascript
// 차트용 데이터 준비
concat(prop("월"), ":", prop("매출"))

자주 발생하는 오류와 해결법

1. 속성명 오류

문제: prop("속성 명") - 공백이 있는 속성명 해결: 정확한 속성명 사용, 따옴표 확인

2. 타입 불일치 오류

문제: 텍스트와 숫자 연산 해결: toNumber() 또는 toString() 함수 사용

 
javascript
// 잘못된 예
prop("문자숫자") + 10

// 올바른 예
toNumber(prop("문자숫자")) + 10

3. 날짜 계산 오류

문제: 빈 날짜 속성으로 인한 오류 해결: 조건문으로 빈 값 처리

 
javascript
if(empty(prop("마감일")), "미정", 
   prop("마감일") - now())

실무 활용 팁과 베스트 프랙티스

1. 성능 최적화

  • 복잡한 공식은 여러 단계로 나누어 작성
  • 불필요한 중첩 조건문 최소화
  • 자주 사용하는 공식은 템플릿으로 저장

2. 유지보수성 향상

  • 공식에 주석 추가 (/* 주석 */)
  • 명확한 속성명 사용
  • 공식 결과를 별도 속성으로 저장하여 재사용

3. 협업 시 고려사항

  • 팀원이 이해하기 쉬운 단순한 구조 유지
  • 공식 사용법을 문서화
  • 오류 발생 시 대체값 설정

마무리

노션의 공식 기능은 단순한 계산 도구를 넘어서 강력한 자동화 시스템을 구축할 수 있게 해주는 핵심 기능입니다. 기본 문법부터 고급 테크닉까지 단계적으로 학습하여 여러분만의 스마트한 워크스페이스를 만들어보세요.

2025년 현재 노션은 AI 기능과 향상된 협업 도구들이 추가되면서 더욱 강력해졌습니다. 이러한 새로운 기능들을 공식과 함께 활용하면 업무 효율성을 크게 향상시킬 수 있습니다.