Profile Query Language Panoramica (PQL)

Profile Query Language (PQL) è un linguaggio di query conforme a Experience Data Model (XDM) progettato per supportare la definizione e l’esecuzione di query di segmentazione per Real-time Customer Profile i dati.

Questa guida fornisce una panoramica generale di PQL, comprensiva delle linee guida per la formattazione e della fornitura di espressioni PQL di esempio.

Formattazione query PQL

Le query PQL dispongono della firma seguente:

({INPUT_PARAMETER_1}, {INPUT_PARAMETER_2}, ...) => {RESULT_TYPE}

Il parametro di input può essere un primitivo semplice, ad esempio un valore booleano o una stringa, o un tipo più complesso, ad esempio un oggetto, un array o una mappa.

Esistono tre modi diversi per fare riferimento ai parametri di input all’interno del corpo di un’espressione PQL:

Riferimento implicito al primo parametro

Nell'esempio seguente, poiché il primo parametro è sempre nel contesto, è possibile fare un riferimento di proprietà (homeAddress) direttamente ad esso.

homeAddress.stateProvince = workAddress.stateProvince

Riferimento esplicito al primo parametro

Nell’esempio seguente, $1 fa riferimento al primo parametro. Di conseguenza, $2 fa riferimento al secondo parametro, ecc.

$1.homeAddress.stateProvince = $1.homeAddress.stateProvince

Utilizzo di variabili denominate, utilizzando la notazione lambda

Nell’esempio seguente, Profile è un nome di variabile, che può essere scelto dall’autore della query.

(Profile) => Profile.homeAddress.stateProvince = Profile.workAddress.stateProvince

Valori letterali PQL

PQL supporta i seguenti tipi letterali:

Letterale Definizione Esempio
Stringa Tipo di dati composto da caratteri racchiusi tra virgolette doppie. "pizza", "jobs", "antidisestablishmentarianism"
Booleano Tipo di dati vero o falso. true, false
Intero Tipo di dati che rappresenta un numero intero. Può essere positivo, negativo o zero. -201, 0, 412
Doppio Tipo di dati che rappresenta qualsiasi numero reale. Può essere positivo, negativo o zero. -51.24, 3.14, 0.6942058
Data Tipo di dati che può essere utilizzato per creare date basate su anno, mese e giorno come parametri interi. È formattato come date(year, month, day) date(2020, 3, 14)
Array Tipo di dati composto da un gruppo di altri valori letterali. Utilizza parentesi quadre per raggruppare e virgole per delimitare valori diversi.
Nota: non è possibile accedere direttamente alle proprietà degli elementi all'interno di una matrice. Pertanto, se è necessario accedere a una proprietà all'interno di una matrice, il metodo supportato è select X from array where X.item = ....
PQL si riserva la parola xEvent per fare riferimento a un array di eventi di esperienza collegati a un profilo.
[1, 4, 7], ["US", "CA"]
Riferimenti temporali relativi Parole riservate che possono essere utilizzate per creare riferimenti a marca temporale e a intervalli di tempo.
  • ora, oggi, ieri, domani
  • questo, ultimo, successivo
  • prima, dopo,
  • millisecondi, secondo(i), minuto(i), ora(i), giorno(i), settimana(i), mese(i), anno(i), decennio(i), secolo/secoli, millennio/millenni
X.timestamp occurs before today, X.timestamp occurs last month, X.timestamp occurs <= 3 days before now

Funzioni PQL

La tabella seguente illustra le diverse categorie di funzioni PQL supportate, compresi i collegamenti a ulteriori informazioni.

Categoria Definizione
Booleano Utilizzato per implementare l’algebra booleana in PQL. Ulteriori informazioni su queste funzioni sono disponibili nel documento funzioni booleane.
Confronto Utilizzato per confrontare tra diversi elementi PQL. Ulteriori informazioni su queste funzioni sono disponibili nel documento sulle funzioni di confronto.
Array, list e set Utilizzato per interagire con array, elenchi e set. Ulteriori informazioni su queste funzioni sono disponibili nel documento matrice, elenco e impostazione funzioni.
Mappa Usato per interagire con le mappe. Ulteriori informazioni su queste funzioni sono disponibili nel documento sulle funzioni mappa.
Stringa Utilizzato per interagire con le stringhe. Ulteriori informazioni su queste funzioni sono disponibili nel documento funzioni stringa.
Oggetto Utilizzato per interagire con gli oggetti. Ulteriori informazioni su queste funzioni sono disponibili nel documento funzioni oggetto.
Aritmetica Utilizzato per eseguire l’aritmetica di base sugli elementi PQL. Ulteriori informazioni su queste funzioni sono disponibili nel documento funzioni aritmetiche
Aggregazione Utilizzato per combinare i risultati di un array in un singolo risultato. Ulteriori informazioni sulle funzioni di aggregazione sono disponibili nel documento funzioni di aggregazione.
Data e ora Utilizzato in combinazione con oggetti data, ora e datetime. Ulteriori informazioni su queste funzioni sono disponibili nel documento delle funzioni data/ora.
Filtro Utilizzato per filtrare i dati all’interno di array. Ulteriori informazioni su queste funzioni sono disponibili nel documento funzioni filtro.
quantificatori logici Utilizzato per affermare condizioni all'interno di un array. Ulteriori informazioni sono disponibili nel documento quantificatori logici.
Varie Le funzioni che non rientrano in nessuna delle categorie di cui sopra si trovano nel documento funzioni varie.

Passaggi successivi

Ora che hai imparato a utilizzare Profile Query Language, puoi utilizzare PQL per creare e modificare i segmenti. Per ulteriori informazioni sulla segmentazione, consulta la panoramica sulla segmentazione.

In questa pagina