Kaavojen syntaksi ja funktiot

Kaavojen funktiot hero
Tässä artikkelissa

Notionin kaavat voivat toimia eri ominaisuuksilla ja funktioilla. Tässä on lista kaavoista ➗


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

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

Ominaisuuden tyyppi

Esimerkkejä

Kaavan tyyppi

Otsikko

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

Teksti

Teksti

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

Teksti

Valitse

prop("Priority") == "High"

Teksti

Monivalinta

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

Text (list)

Valintaruutu

prop("Checkbox")
not prop("Checkbox")

Boolean

Sähköposti, URL, puhelinnumero

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

Teksti

Yksilöllinen tunniste

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

Teksti

Created By,
Edited By

prop("Created By").name()
prop("Created By").email()

Henkilö

Henkilö

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

Person (list)

Date,
Created Time,
Last Edited Time

prop("Due Date") > now()
dateBetween(prop("Birthday"), now(), "days")

Päivämäärä

Numero

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

Numero

Relaatio

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

Page (list)

Rollup

prop("Purchases").length()
prop("Average cost") * 12

Numero, päivämäärä tai mikä tahansa lista. Riippuu rollupin määrityksistä.

Sisäänrakennetut ovat erityisiä kieleen sisäänrakennettuja symboleja ja arvoja, jotka auttava määrittämään laskelmia.

Sisäänrakennettu

Esimerkki

Matemaattiset operaattorit:+, -, *, %

2 * pi()"hello" + "world"

Boolen arvot:
true, false

truefalse

Vertailuoperaattorit:
==, >, >=, <, <=

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

Loogiset operaattorit:
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

Kolmiosainen operaattori:
? :

X ? Y : Z is equivalent to if(X, Y, Z)

Notionin kaavat tukevat seuraavia funktioita.

Nimi

Kuvaus

Esimerkki

if

Palauttaa ensimmäisen arvon, jos ehto on True; muussa tapauksessa palauttaa toisen arvon.

if(true, 1, 2) = 1if(false, 1, 2) = 2prop("Checked") == true ? "Complete" : "Incomplete"

ifs

Palauttaa arvon, joka vastaa ensimmäistä True-ehtoa. Tätä voidaan käyttää vaihtoehtona useille sisäkkäin asetetuille if()-lausunnoille.

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

Tyhjä

Palauttaa arvon true, jos arvo on tyhjä. Arvoja 0, “” ja [] pidetään tyhjinä.

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

length

Palauttaa tekstin tai listan arvon pituuden.

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

substring

Palauttaa tekstin alimerkkijonon aloitusindeksistä (se mukaan lukien) loppuindeksiin (valinnaisesti ja pois lukien).

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

Sisältää

Palauttaa arvon True, jos merkkijono sisältyy arvoon.

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

Test

Palauttaa arvon True, jos arvo vastaa säännöllistä lauseketta, muuten arvon False.

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

match

Palauttaa kaikki säännöllisen lausekkeen vastaavuudet listana.

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

Korvaa

Korvaa ensimmäisen vastaavan säännöllisen lausekkeen korvausarvolla.

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

Korvaa kaikki

Korvaa kaikki vastaavat säännölliset lausekkeet korvausarvolla.

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

lower

Muuntaa tekstin pieniksi kirjaimiksi.

lower("NOTION") = "notion"

upper

Muuntaa tekstin isoiksi kirjaimiksi.

upper("notion") = "NOTION"

toista

Toistaa tekstin annetun määrän verran.

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

Linkki

Luo hyperlinkin merkinnän tekstistä ja URL-osoitteesta.

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

Tyyli

Lisää tekstiin tyylejä ja värejä. Käytössä olevat muotoilutyylit: "b" (lihavointi), "u" (alleviivaus), "i" (kursivointi), "c" (koodi) ja "s" (yliviivaus). Käytössä olevat värit: "harmaa", "ruskea", "oranssi", "keltainen", "vihreä", "sininen", "violetti", "vaaleanpunainen" ja "punainen". Lisää väreihin "_background" asettaaksesi taustavärit.

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

unstyle

Poistaa muotoilutyylit tekstistä. Jos tyylejä ei ole määritetty, kaikki tyylit poistetaan.

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

Muoto

Palauttaa arvon, joka on muotoiltu tekstinä.

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

lisää

Palauttaa kahden numeron summan.

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

subtract

Palauttaa kahden numeron erotuksen.

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

multiply

Palauttaa kahden numeron tulon.

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

mod

Palauttaa ensimmäisen numeron modulo toinen numero.

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

pow

Palauttaa eksponenttipotenssiin korotetun kantaluvun tuloksen.

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

divide

Palauttaa kahden numeron osamäärän.

divide(5, 10) = 0.55 / 10 = 0.5

Väh.

Palauttaa argumenttien pienimmän numeron.

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

Enint.

Palauttaa argumenttien suurimman numeron.

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

Summa

Palauttaa argumenttien summan.

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

Mediaani

Palauttaa argumenttien keskimmäisen arvon.

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

mean

Palauttaa argumenttien aritmeettisen keskiarvon.

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

abs

Palauttaa numeron absoluuttisen arvon.

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

round

Palauttaa numeron arvon pyöristettynä lähimpään kokonaislukuun.

round(0.4) = 0round(-0.6) = -1

ceil

Palauttaa pienimmän kokonaisluvun, joka on vastaava tai suurempi kuin numero.

ceil(0.4) = 1ceil(-0.6) = 0

floor

Palauttaa suurimman kokonaisluvun, joka on vastaava tai pienempi kuin numero.

floor(0.4) = 0floor(-0.6) = -1

sqrt

Palauttaa numeron positiivisen neliöjuuren.

sqrt(4) = 2sqrt(7) = 2.6457513110645907

cbrt

Palauttaa numeron kuutiojuuren.

cbrt(9) = 2.080083823051904cbrt(64) = 4

exp

Palauttaa arvon e^x, jossa x on argumentti ja E on Eulerin vakio (2,718…), luonnollisen logaritmin kantaluku.

exp(1) = 2.718281828459045exp(-1) = 0.36787944117144233

ln

Palauttaa numeron luonnollisen logaritmin.

ln(2.718281828459045) = 1ln(10) = 2.302585092994046

log10

Palauttaa numeron kymmenkantaisen logaritmin.

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

log2

Palauttaa numeron kaksikantaisen logaritmin.

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

sign

Palauttaa arvon 1, jos numero on positiivinen, arvon -1, jos numero on negatiivinen, ja arvon 0, jos numero on nolla.

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

pi

Palauttaa ympyrän ympärysmitan suhteen sen halkaisijaan.

pi() = 3.141592653589793

e

Palauttaa luonnollisen logaritmin kantaluvun.

e() = 2.718281828459045

toNumber

Jäsentää tekstistä numeron.

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

nyt

Palauttaa nykyisen päivämäärän ja ajan.

now() = @August 30, 2023 5:55 PM

tänään

Palauttaa nykyisen päivämäärän ilman aikaa.

today() = @April 19, 2024

minute

Palauttaa päivämäärän minuutit (0–59).

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

hour

Palauttaa päivämäärän tunnin (0–23).

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

päivä

Palauttaa päivämäärän viikon päivän väliltä 1 (maanantai) ja 7 (sunnuntai).

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

päivämäärä

Palauttaa kuukauden päivän päivämäärästä (1–31).

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

viikko

Palauttaa vuoden ISO-viikon päivämäärälle (1–53).

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

kuukausi

Palauttaa päivämäärän kuukauden (1–12).

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

vuosi

Palauttaa päivämäärän vuoden.

year(now()) = 2023

dateAdd

Lisää päivämäärään ajan. Yksikköargumentti voi olla jokin seuraavista:"years", "quarters", "months", "weeks", "days", "hours" tai "minutes".

dateAdd(now(), 1, "days") = @August 31, 2023 5:55 PMdateAdd(now(), 2, "months") = @October 30, 2023 5:55
PM
dateAdd(now(), 3, "years") = @August 30, 2026 5:55 PM

dateSubtract

Vähentää päivämäärästä ajan. Yksikköargumentti voi olla jokin seuraavista:"years", "quarters", "months", "weeks", "days", "hours" tai "minutes".

dateSubtract(now(), 1, "days") = @August 29, 2023 5:55 PMdateSubtract(now(), 2, "months") = @June 30, 2023 5:55 PMdateSubtract(now(), 3, "years") = @August 30, 2020 5:55 PM

dateBetween

Palauttaa kahden päivämäärän välisen eron. Yksikköargumentti voi olla jokin seuraavista:"years", "quarters", "months", "weeks", "days", "hours" tai "minutes".

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

Aikaväli

Palauttaa aikavälin, joka koostuu aloitus- ja päättymispäivämääristä.

dateRange(prop("Start Date"), prop("End Date")) = @September 7, 2022 → September 7, 2023

dateStart

Palauttaa aikavälin alun.

dateStart(prop("Date Range")) = @September 7, 2022dateBetween(dateStart(prop("Date Range")), dateEnd(prop("Date Range")), "days") = -365

dateEnd

Palauttaa aikavälin lopun.

dateEnd(prop("Date range")) = @September 7, 2023dateBetween(dateEnd(prop("Date Range")), dateStart(prop("Date Range")), "days") = 365

timestamp

Palauttaa nykyisen Unix-aikaleiman, joka edustaa kuluneiden millisekuntien määrää 1.1.1970 jälkeen.

timestamp(now()) = 1693443300000

fromTimestamp

Palauttaa annetun Unix-aikaleiman perusteella lasketun päivämäärän. Aikaleima edustaa millisekuntien määrää 1.1.1970 jälkeen. Huomio: palautettu päivämäärä ei säilytä sekunteja ja millisekunteja.

fromTimestamp(1689024900000) = @July 10, 2023 2:35 PM

Muoto Päivämäärä

Muotoilee päivämäärän käyttämällä mukautettua muodon merkkijonoa. Muodon merkkijono voi sisältää tunnuksia, jotka esittävät osaa päivästä, kuten: "YYYY" vuodelle, "MM" kuukaudelle, "DD" päivälle, "h" tunnille ja "mm" minuutille.

formatDate(now(), "MMMM D, Y") = "August 30, 2023"
formatDate(now(), "MM/DD/YYYY")
= "08/30/2023"
formatDate(now(), "h:mm A")
= "17:55 PM"

parseDate

Palauttaa ISO 8601 -standardin mukaisesti jäsennetyn päivämäärän.

parseDate("2022-01-01") = @January 1, 2022parseDate("2022-01-01T00:00Z") = @December 31, 2021 4:00 PM

Nimi

Palauttaa henkilön nimen.

name(prop("Created By"))prop("Pioneers").map(name(current)).join(", ") = "Grace Hopper, Ada Lovelace"

Sähköposti

Palauttaa henkilön sähköpostiosoitteen.

email(prop("Created By"))prop("People").map(email(current)).join(", ")

aikaan

Palauttaa arvon määritetyssä indeksissä listassa.

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

first

Palauttaa ensimmäisen kohteen listassa.

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

viime

Palauttaa viimeisen kohteen listassa.

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

slice

Palauttaa listan kohteet annetusta aloitusindeksistä (se mukaan lukien) loppuindeksiin (valinnaisesti ja pois lukien).

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

concat

Palauttaa monen listan ketjutuksen.

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

Lajittele

Palauttaa listan lajiteltuna.

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

reverse

Palauttaa käänteisen listan.

reverse(["green", "eggs", "ham"]) = ["ham", "eggs", "green"]

Liity

Palauttaa listan arvot, joissa liitin on sijoitettu arvojen väliin.

join(["a", "b", "c"], ", ") = "a, b, c"join(["dog", "go"], "") = "doggo"

Jaa

Palauttaa listan arvoista, jotka on luotu jakamalla tekstisyöte erottimella.

split("apple,pear,orange", ",") = ["apple", "pear", "orange"]

Ainutlaatuinen

Palauttaa syöttölistan yksilöllisten arvojen listan.

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

Sisältää

Palauttaa arvon True, jos lista sisältää määritetyn arvon, ja muuten False.

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

hae

Palauttaa listan ensimmäisen kohteen, jonka kohdalla ehto on true.

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

findIndex

Palauttaa ensimmäisen kohteen indeksin listassa, jonka kohdalla ehto on True.

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

Suodata

Palauttaa arvot listana, joiden kohdalla ehto on True.

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

Osa

Palauttaa arvon True, jos jokin listan kohde täyttää annetun ehdon, ja muuten False.

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

joka

Palauttaa arvon True, jos kaikki listan kohteet täyttävät annetun ehdon, ja muuten False.

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

map

Palauttaa listan, johon on täytetty lausekkeen antamat tulokset syötteen jokaiselle kohteelle.

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

flat

Yhdistää listojen listan yhdeksi listaksi.

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

ID

Palauttaa sivun tunnuksen. Jos sivua ei anneta, palauttaa sen sivun tunnuksen, jossa kaava sijaitsee.

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

equal

Palauttaa arvon True, jos arvot ovat samanarvoisia, ja muuten False.

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

unequal

Palauttaa arvon False, jos arvot ovat samanarvoisia, ja muuten True.

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

let

Määrittää muuttujalle arvon ja laskee lausekkeen kyseisen muuttujan avulla.

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

lets

Määrittää arvot useille muuttujille ja arvioi lausekkeen kyseisten muuttujien perusteella.

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


Anna palautetta

Oliko tästä resurssista apua?