Formelsyntaks og funksjoner

I dette hjelpedokumentet

Notion-formler kan fungere pÄ ulike egenskaper og funksjoner. Her finner du en liste over dem.


Vet du hva du vil at formelen skal gjĂžre, men er usikker pĂ„ hvordan du bygger den? Du kan bruke Notion KI til Ă„ opprette og redigere formler. LĂŠr mer her →

Notion-formler kan fungere ved bruk av ulike egenskaper og funksjoner. Her finner du en liste over dem!

Formler stĂžtter nesten alle egenskapstyper. Merk at formeltyper er forskjellige fra egenskapstyper.

Egenskapstyper

Eksempler

Formeltype

Tittel

prop("Title")prop("Title").length()

Tekst

Tekst

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

Tekst

Velg

prop("Prioritet") == "HĂžy"

Tekst

Flervalg

prop("Tags").length()prop("Tags").includes("Finance")

Tekst (liste)

Avmerkingsboks

prop("avmerkingsboks")
not prop("avmerkingsboks")

Boolsk verdi

E-post, URL, telefonnummer

!empty(prop("Phone"))
!empty(prop("Email"))
lenke("Call", "tel:" + prop("Phone"))

Tekst

Unik ID

prop("Task ID").split("-").first() ← Prefix
prop("Task 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 (liste)

Dato,
Opprettet tidspunkt,
Sist redigert

prop("Frist") > now()
dateBetween(prop("bursdag"), now(), "days")

Dato

Nummer

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

Nummer

Relasjon

prop("Tasks").length()
prop("Tasks").filter(current.prop("Status") !== "Done")

Side (liste)

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()"hello" + "world"

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) = 1ifs(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("hello") = 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.

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

style

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

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()) = "August 30, 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. StĂžtter ett eller to argumenter. Ved to argumenter representerer det fĂžrste tallet verdien, og det andre angir antall desimalplasser.

round(0.4) = 0round(-0.6) = -1
round(1.234, 0)
= 1round(1.234, 2) = 1.23round(1234, -2) = 1200

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.

floor(0.4) = 0floor(-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:55dateSubtract(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("DatoomrÄde")) = @7. september 2022dateBetween(dateStart(prop("DatoomrÄde")), dateEnd(prop("DatoomrÄde")), "days") = -365

dateEnd

Returnerer slutten av datoperioden.

dateEnd(prop("DatoomrÄde")) = @7. september 2023dateBetween(dateEnd(prop("DatoomrÄde")), dateStart(prop("DatoomrÄde")), "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/YYYY")
= "08/30/2023"
formatDate(now(), "h:mm A")
= "17:55"

formatNumber

"Omsetning: " + formatNumber(prop("Number"), "usd", 0).style("green")

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("Pionerer").map(name(current)).join(", ") = "Grace Hopper, Ada Lovelace"

e-post

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(["dog", "go"], "") = "doggo"

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) = Empty

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

trim

Fjerner mellomrom fra begynnelsen og slutten av teksten.

" notion ".trim() = "notion"


Gi tilbakemelding

Var denne ressursen nyttig?


Powered by Fruition