Formelsyntaks og funksjoner

I dette hjelpedokumentet

Notion-formler kan fungere på forskjellige egenskaper og funksjoner. Her finner du en liste over dem ➗


Looking for Notion formula basics? Check out this article →

Notion formulas can operate using various properties and functions. Here, you'll find a list of them!

You can use formulas in database automations, database buttons, and buttons to streamline your workflows.

Formulas support almost all property types. Note that formula types are different from property types.

Egenskapstyper

Eksempler

Formeltype

Tittel

prop("Tittel")prop("Tittel").length()

Tekst

Tekst

prop("Tekst")prop("Text").length()

Tekst

Valg

prop("Prioritet") == "Høy"

Tekst

Flervalg

prop("Tagger").length( )
prop("Tagger").includes("Økonomi")

Text (list)

Avmerkingsboks

prop("Avmerkingsboks")
not prop("Avmerkingsboks")

Boolsk verdi

E-post, URL, telefonnummer

!empty(prop("Telefon"))
!empty(prop("E-post"))
link("Ring", "tlf:" + prop("Telefon"))

Tekst

Unik ID

prop("Oppgave-ID").split("-").first( ) ← Prefix
prop("Oppgave-ID").split("-").last() ← ID

Tekst

Opprettet av,
Redigert av

prop("Opprettet av").name()
prop("Opprettet av").email()

Person

Person

prop("Person")
prop("Person").at(0).name()
prop("Person").map(current.email())

Person (list)

Dato,
Tidspunkt for opprettelse,
Sist redigert

prop("Frist") > now()
dateBetween(prop("Fødselsdag"), now(), "days")

Dato

Tall

prop("Tall") / 2
pi() * prop("Radius") ^ 2

Tall

Relasjon

prop("Oppgaver").length()
prop("Oppgaver").filter(current.prop("Status") !== "Ferdig")

Page (list)

Rollup

prop("Innkjøp").length()
prop("Gjennomsnittskostnad") * 12

Tall, dato eller enhver liste. Avhenger av rollup-konfigurasjonen.

Innbygginger er spesifikke symboler og verdier som er bygget inn i språket for å hjelpe til med å betegne en beregning.

Innebygd

Eksempel

Matematiske operatorer:+, -, *, %

2 * pi()"hallo" + "verden"

Boolske verdier:
true, false

truefalse

Sammenligningsoperatorer:
==, >, >=,<, <=

123 == 123 = true"Notion" == "Motion" = false

Logiske operatorer:
and, or, not

and:true and false
true && false
and(true, false)
or:true or false
true || false
or(true, false)
not:not true
!true

Ternær operator:
? :

X ? Y : Z er ekvivalent med if(X, Y, Z)

Notion-formler støtter følgende funksjoner.

Navn

Beskrivelse

Eksempel

if

Returnerer den første verdien hvis betingelsen er sann; ellers returnerer den andre verdien.

if(true, 1, 2) = 1if(false, 1, 2) = 2prop("Avmerket") == true ? "Ferdig" : "Uferdig"

ifs

Returnerer verdien som tilsvarer den første sanne betingelsen. Dette kan brukes som et alternativ til flere nestede if()-setninger.

ifs(true, 1, true, 2, 3) = 1if(false, 1, false, 2, 3) = 3

empty

Returnerer sann hvis verdien er tom. 0, "", og [] anses som tomme.

empty(0) = trueempty([]) = true

length

Returnerer lengden på teksten eller listeverdien.

length("Hallo") = 5length([1, 2, 3]) = 3

substring

Returnerer delstrengen til teksten fra startindeksen (inkludert) til sluttindeksen (valgfritt og eksklusivt).

substring("Notion", 0, 3) = "Not"substring("Notion", 3) = "ion"

contains

Returnerer true hvis søkestrengen er til stede i verdien.

contains("Notion", "ot") = true

test

Returnerer true hvis verdien samsvarer med det regulære uttrykket og usann ellers.

test("Notion", "Not") = truetest("Notion", "\\d") = false

match

Returnerer alle treff i det regulære uttrykket som en liste.

match("Notion Notion", "Not") = ["Not", "Not"]match("Notion 123 Notion 456", "\\d+") = ["123", "456"]

replace

Erstatter det første treffet av det regulære uttrykket med erstatningsverdien.

replace("Notion Notion", "N", "M") = "Motion Notion"

replaceAll

Erstatter alle treff i et regulært uttrykk med erstatningsverdien.

replaceAll("Notion Notion", "N", "M") = "Motion Motion"replaceAll("Notion 123", "\\d", "") = "Notion"

lower

Konverterer teksten til små bokstaver.

lower("NOTION") = "notion"

upper

Konverterer teksten til store bokstaver.

upper("notion") = "NOTION"

repeat

Gjentar teksten et gitt antall ganger.

repeat("0", 4) = "0000"repeat("~=", 10) = "~=~=~=~=~=~=~=~=~=~="

link

Oppretter en hyperlenke fra etiketteksten og URL-en.

link("Notion", "https://notion.so") = "Notion"

style

Legger til stiler og farger i teksten. Gyldige formateringsstiler: "b" (fet), "u" (understreking), "i" (kursiv), "c" (kode), or "s" (gjennomstreking). Gyldige farger: "gray", "brown", "orange", "yellow", "green", "blue", "purple", "pink" og "red". Legg til "_background" til farger for å angi bakgrunnsfarger.

style("Notion", "b", "u") = "Notion" style("Notion", "blue", "gray_background")

unstyle

Fjerner formateringsstiler fra teksten. Hvis ingen stiler er angitt, fjernes alle stiler.

unstyle("Text")unstyle("Text", "b")

format

Returnerer verdien formatert som tekst.

format(1234) = "1234"format(now()) = "30. august, 2023 17:55"

add

Returnerer summen av to tall.

add(5, 10) = 155 + 10 = 15

subtract

Returnerer differansen av to tall.

subtract(5, 10) = -55 - 10 = -5

multiply

Returnerer produktet av to tall.

multiply(5, 10) = 505 * 10 = 50

mod

Returnerer første tallmodulus for det andre tallet.

mod(5, 10) = 55 % 10 = 5

pow

Returnerer resultatet av et grunntall opphøyet i en potens.

pow(5, 10) = 97656255 ^ 10 = 9765625

divide

Returnerer kvotienten av to tall.

divide(5, 10) = 0,55 / 10 = 0,5

min

Returnerer det minste tallet av argumentene.

min(1, 2, 3) = 1min([1, 2, 3]) = 1

max

Returnerer det største tallet av argumentene.

max(1, 2, 3) = 3max([1, 2, 3]) = 3

sum

Returnerer summen av argumentene.

sum(1, 2, 3) = 6sum([1, 2, 3], 4, 5) = 15

median

Returnerer den midterste verdien av argumentene.

median(1, 2, 4) = 2
median([1, 2, 3], 4) = 2.5

mean

Returnerer det aritmetiske gjennomsnittet av argumentene.

mean(1, 2, 3) = 2
mean([1, 2, 3], 4, 5) = 3

abs

Returnerer den absolutte verdien av tallet.

abs(10) = 10abs(-10) = 10

round

Returnerer verdien av et tall avrundet til nærmeste heltall.

round(0,4) = 0round(-0,6) = -1

ceil

Returnerer det minste heltall større enn eller lik tallet.

ceil(0,4) = 1ceil(-0,6) = 0

floor

Returnerer det største heltall mindre enn eller lik tallet.

gulv(0,4) = 0gulv(-0,6) = -1

sqrt

Returnerer den positive kvadratroten av tallet.

sqrt(4) = 2sqrt(7) = 2,6457513110645907

cbrt

Returnerer kubikkroten av tallet.

cbrt(9) = 2,080083823051904cbrt(64) = 4

exp

Returnerer e^x, der x er argumentet, og e er Eulers tall (2,718 ...), grunnlaget for den naturlige logaritmen.

exp(1) = 2,718281828459045exp(-1) = 0,36787944117144233

ln

Returnerer den naturlige logaritmen til tallet.

ln(2,718281828459045) = 1ln(10) = 2,302585092994046

log10

Returnerer tallets logaritme med grunntall 10.

log10(10) = 1log10(100000) = 5

log2

Returnerer logaritmen til tallet med grunntall 2.

log2(4) = 2log2(1024) = 10

sign

Returnerer 1 hvis tallet er positivt, -1 hvis det er negativt, og 0 hvis det er null.

sign(-10) = -1sign(10) = 1

pi

Returnerer forholdet mellom omkretsen og diameteren til en sirkel.

pi() = 3,141592653589793

e

Returnerer grunntallet for den naturlige logaritmen.

e() = 2,718281828459045

toNumber

Analyserer et tall fra tekst.

toNumber("2") = 2toNumber(now()) = 1693443300000toNumber(true) = 1

now

Returnerer gjeldende dato og klokkeslett.

nå() = @30. august, 2023 17:55

today

Returnerer gjeldende dato uten klokkeslett.

today() = @19. april, 2024

minute

Returnerer minuttet for datoen (0–59).

minute(parseDate("2023-07-10T17:35Z")) = 35

hour

Returnerer klokkeslettet for datoen (0–23).

hour(parseDate("2023-07-10T17:35Z")) = 17

day

Returnerer ukedagen for datoen, mellom 1 (mandag) og 7 (søndag).

day(parseDate("2023-07-10T17:35Z")) = 1

date

Returnerer dagen i måneden fra datoen (1–31).

date(parseDate("2023-07-10T17:35Z")) = 10

week

Returnerer ISO-uken for året for datoen (1–53).

week(parseDate("2023-01-02")) = 1

month

Returnerer måneden for datoen (1–12).

month(parseDate("2023-07-10T17:35Z")) = 7

year

Returnerer året for datoen.

year(now()) = 2023

dateAdd

Legger til tidspunkt i datoen. Enhetsargumentet kan være ett av følgende: "years", "quarters", "months", "weeks", "days", "hours" eller "minutes".

dateAdd(now(), 1, "days") = @31. august 2023 17:55dateAdd(now(), 2, "months") = @30. oktober 2023 17:55
dateAdd(now(), 3, "years") = @30. august 2026 17:55

dateSubtract

Trekker fra klokkeslett fra datoen. Enhetsargumentet kan være ett av følgende: "years", "quarters", "months", "weeks", "days", "hours" eller "minutes".

dateSubtract(now(), 1, "days") = @29. august 2023 17:55dateSubtract(now(), 2, "months") = @30. juni 2023 17:55
dateSubtract
(now(), 3, "years") = @30. august 2020 17:55

dateBetween

Returnerer forskjellen mellom to datoer. Enhetsargumentet kan være ett av følgende: "years", "quarters", "months", "weeks", "days", "hours" eller "minutes".

dateBetween(now(), parseDate("2022-09-07"), "days") = 357dateBetween(parseDate("2030-01-01"), now(), "years") = 6

Datointervall

Returnerer en datoperiode definert av start- og sluttdatoene.

dateRange(prop("Startdato"), prop("Sluttdato")) = @7. september 2022 → 7. september 2023

dateStart

Returnerer starten av datoperioden.

dateStart(prop("Datointervall")) = @7. september 2022dateBetween(dateStart(prop("Datointervall")), dateEnd(prop("Datointervall")), "days") = -365

dateEnd

Returnerer slutten av datoperioden.

dateEnd(prop("Datointervall")) = @7. september, 2023dateBetween(dateEnd(prop("Datointervall")), dateStart(prop("Datointervall")), "days") = 365

tidsstempel

Returnerer gjeldende Unix-tidsstempel, som representerer antall millisekunder som har gått siden 1. januar 1970.

timestamp(now()) = 1693443300000

fromTimestamp

Returnerer datoen fra det gitte Unix-tidsstempelet. Tidsstemplet representerer antall millisekunder som har gått siden 1. januar 1970. NB! Den returnerte datoen vil ikke beholde sekunder og millisekunder.

fromTimestamp(1689024900000) = @10. juli 2023 14:35

formatDate

Formaterer datoen ved hjelp av en egendefinert formatstreng. Formatstrengen kan inneholde følgende tekst for å representere deler av datoen: "YYYY" for år, "MM" for måned, "DD" for dag, "h" for time, "mm" for minutt.

formatDate(now(), "MMMM D, Y" ) = "30. august, 2023"
formatDate(now(), "MM/DD/YYYYY"
) = "08/30/2023"
formatDate(now(), "h:mm A")
= "17:55"

parseDate

Returnerer datoen analysert i henhold til ISO 8601-standarden.

parseDate("2022-01-01") = @1. januar, 2022parseDate("2022-01-01T00:00Z") = @31. desember, 2021 16:00

name

Returnerer navnet på en person.

name(prop("Opprettet av"))prop("Pionærer").map(name(current)).join(", ") = "Grace Hopper, Ada Lovelace"

email

Returnerer e-postadressen til en person.

email(prop("Opprettet av" ))
prop("Personer").map(email(current)).join(", ")

at

Returnerer verdien ved den angitte indeksen i en liste.

at([1, 2, 3], 1) = 2

first

Returnerer det første elementet i listen.

first([1, 2, 3]) = 1

last

Returnerer det siste elementet i listen.

last([1, 2, 3]) = 3

slice

Returnerer elementene i listen fra den oppgitte startindeksen (inkludert) til sluttindeksen (valgfritt og eksklusivt).

slice([1, 2, 3], 1, 2) = [2]slice(["a", "b", "c"], 1) = ["b", "c"]

concat

Returnerer sammenføyningen av flere lister.

concat([1, 2], [3, 4]) = [1, 2, 3, 4]concat(["a", "b"], ["c", "d"]) = ["a", "b", "c", "d"]

Sorter

Returnerer listen i sortert rekkefølge.

sort([3, 1, 2]) = [1, 2, 3]

reverse

Returnerer den reverserte listen.

reverse(["grønn", "egg", "skinke"]) = ["skinke", "egg", "grønn"]

join

Returnerer verdiene i listen, med forbindelsen plassert mellom hver av dem.

join(["a", "b", "c"], ", ") = "a, b, c"join(["vof", "sen"], "") = "vofsen"

split

Returnerer listen over verdier som er opprettet ved å dele tekstinndata med et skilletegn.

split("eple,pære,appelsin", ",") = ["eple", "pære", "appelsin"]

unique

Returnerer listen over unike verdier i inndatalisten.

unik([1, 1, 2]) = [1, 2]

includes

Returnerer true hvis listen inneholder den angitte verdien, og false ellers.

includes(["a", "b", "c"], "b") = trueincludes([1, 2, 3], 4) = false

find

Returnerer det første elementet i listen hvor betingelsen vurderes som true.

find(["a", "b", "c"], current == "b") = "b"find([1, 2, 3], current > 100) = Tom

findIndex

Returnerer indeksen til det første elementet i listen der betingelsen er true.

findIndex(["a", "b", "c"], current == "b") = 1findIndex([1, 2, 3], current > 100) = -1

filter

Returnerer verdiene i listen der betingelsen er true.

filter([1, 2, 3], current > 1) = [2, 3]filter(["a", "b", "c"], current == "a") = ["a"]

some

Returnerer true hvis et element i listen oppfyller den gitte betingelsen, og ellers false.

some([1, 2, 3], current == 2) = truesome(["a", "b", "c"], current.length > 2) = false

every

Returnerer true hvis hvert element i listen oppfyller den gitte betingelsen, og ellers false.

every([1, 2, 3], current > 0) = trueevery(["a", "b", "c"], current == "b") = false

map

Returnerer listen fylt ut med resultatene av å kalle uttrykket på hvert element i inndatalisten.

map([1, 2, 3], current + 1) = [2, 3, 4]map([1, 2, 3], current + index) = [1, 3, 5]

flat

Slår sammen flere lister til én liste.

flat([1, 2, 3]) = [1, 2, 3]flat([[1, 2], [3, 4]]) = [1, 2, 3, 4]

id

Returnerer ID-en til siden. Hvis ingen side er oppgitt, returneres ID-en til siden formelen er på.

id()
id(prop("Relation").first())

equal

Returnerer true hvis begge verdiene er like og false ellers.

equal(1, 1) = true"a" == "b" = false

unequal

Returnerer false hvis begge verdiene er like og true ellers.

unequal(1, 2) = true"a" != "a" = false

let

Tildeler en variabel en verdi og evaluerer uttrykket ved å bruke denne variabelen.

let(person, "Alan", "Hallo, " + person + "!") = "Hallo, Alan!"let(radius, 4, round(pi() * radius ^ 2)) = 50

lets

Tildeler verdier til flere variabler og evaluerer uttrykket ved å bruke disse variablene.

lets(a, "Hallo", b, "verden", a + " " + b) = "Hallo, verden"lets(base, 3, height, 8, base * height / 2) = 12


Gi tilbakemelding

Var denne ressursen nyttig?


Powered by Fruition