Profile Query Language (PQL) - översikt
Profile Query Language (PQL) är ett Experience Data Model (XDM)-kompatibelt frågespråk som har utformats för att stödja definition och körning av segmenteringsfrågor för Real-Time Customer Profile-data.
Den här guiden ger en allmän översikt över PQL, som handlar om riktlinjer för formatering och innehåller exempel på PQL-uttryck.
PQL frågeformatering
PQL-frågor har följande signatur:
({INPUT_PARAMETER_1}, {INPUT_PARAMETER_2}, ...) => {RESULT_TYPE}
Indataparametern kan vara enkel primitiv, till exempel ett booleskt värde eller en sträng, eller en mer komplex typ, till exempel ett objekt, en array eller en karta.
Det finns tre olika sätt att referera till indataparametrar i brödtexten för ett PQL-uttryck:
Implicit referens till den första parametern
I exemplet nedan kan en egenskapsreferens (homeAddress
) göras direkt till den första parametern eftersom den alltid är i kontexten.
homeAddress.stateProvince = workAddress.stateProvince
Explicit referens till den första parametern
I exemplet nedan refererar $1
till den första parametern. Därför refererar $2
till den andra parametern osv.
$1.homeAddress.stateProvince = $1.homeAddress.stateProvince
Användning av namngivna variabler med lambda-notation
I exemplet nedan är Profile
ett variabelnamn som kan väljas av frågeförfattaren.
(Profile) => Profile.homeAddress.stateProvince = Profile.workAddress.stateProvince
PQL-litteraler
PQL har stöd för följande literaltyper:
"pizza"
, "jobs"
, "antidisestablishmentarianism"
true
, false
-201
, 0
, 412
-51.24
, 3.14
, 0.6942058
date(year, month, day)
date(2020, 3, 14)
Obs! Du kan inte komma åt egenskaper direkt för objekt i en array. Om du behöver få åtkomst till en egenskap i en array är metoden
select X from array where X.item = ...
som stöds.PQL förbehåller sig ordet
xEvent
för att referera till en array med upplevelsehändelser som är länkade till en profil.[1, 4, 7]
, ["US", "CA"]
Reserverade ord som kan användas för att skapa tidsstämplar och tidsintervallreferenser.
- idag, i går, imorgon
- this, last, next
- före, efter, från
- millisekunder, sekund(er), minut(er), timme(ar), dag(ar), vecka(er), månad(er), år, årtionde, århundraden/århundraden, millennium/millennium
X.timestamp occurs before today
, X.timestamp occurs last month
, X.timestamp occurs <= 3 days before now
Funktioner i PQL
Följande tabell visar de olika kategorierna av PQL-funktioner som stöds, inklusive länkar till ytterligare dokumentation för mer information.
Nästa steg
Nu när du har lärt dig att använda Profile Query Language kan du använda PQL när du skapar och ändrar segmentdefinitioner. Mer information om segmentering finns i segmenteringsöversikten.