Profile Query Language (PQL) visão geral

Profile Query Language (PQL) é uma linguagem de query compatível com Experience Data Model (XDM), projetada para suportar a definição e execução de query de segmentação para Real-time Customer Profile dados.

Este guia fornece uma visão geral do PQL, abrangendo diretrizes de formatação e fornecendo expressões de exemplo do PQL.

Formatação de query PQL

Os query PQL têm a seguinte assinatura:

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

O parâmetro de entrada pode ser um primitivo simples, como um booleano ou uma string, ou um tipo mais complexo, como um objeto, uma matriz ou um mapa.

Há três maneiras diferentes de se referir aos parâmetros de entrada no corpo de uma expressão PQL:

Referência implícita ao primeiro parâmetro

No exemplo abaixo, como o primeiro parâmetro está sempre no contexto, uma referência de propriedade (homeAddress) pode ser feita diretamente a ela.

homeAddress.stateProvince = workAddress.stateProvince

Referência explícita ao primeiro parâmetro

No exemplo abaixo, $1 se refere ao primeiro parâmetro. Como resultado, $2 faria referência ao segundo parâmetro etc.

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

Uso de variáveis nomeadas, usando a notação lambda

No exemplo abaixo, Profile há um nome de variável, que pode ser escolhido pelo autor do query.

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

Literais PQL

O PQL oferece suporte para os seguintes tipos literais:

Literal Definição Exemplo
String Um tipo de dados composto por caracteres entre aspas de duplo. "pizza", "jobs", "antidisestablishmentarianism"
Booleano Um tipo de dados verdadeiro ou falso. true, false
Número inteiro Um tipo de dados que representa um número inteiro. Pode ser positivo, negativo ou zero. -201, 0, 412
Duplo Um tipo de dados que representa qualquer número real. Pode ser positivo, negativo ou zero. -51.24, 3.14, 0.6942058
Data Um tipo de dados que pode ser usado para criar datas com base em ano, mês e dia como parâmetros inteiros. É formatado como date(year, month, day) date(2020, 3, 14)
Matriz Um tipo de dados que é composto como um grupo de outros valores literais. Ele usa colchetes para agrupar e vírgulas para delimitar entre valores diferentes.
Observação: Não é possível acessar diretamente as propriedades de itens em uma matriz. Portanto, se você precisar acessar uma propriedade em um storage, o método suportado será select X from array where X.item = ....
O PQL reserva a palavra xEvent para fazer referência a uma matriz de eventos de experiência vinculados a um perfil.
[1, 4, 7], ["US", "CA"]
Referências de tempo relativas Palavras reservadas que podem ser usadas para formar referências de carimbo de data e hora.
  • agora, hoje, ontem, amanhã
  • this, last, next
  • before, after, from
  • milissegundo(s), segundo(s), minuto(s), hora(s), dia(s), semana(s), mês(es), ano(s), década(s), século/séculos, milênio/milênio
X.timestamp occurs before today, X.timestamp occurs last month, X.timestamp occurs <= 3 days before now

Funções PQL

A tabela a seguir descreve as diferentes categorias das funções PQL suportadas, incluindo links para documentação adicional para obter mais informações.

Categoria Definição
Booleano Usada para implementar álgebra booleana no PQL. Mais informações sobre essas funções podem ser encontradas no documento de funçõesbooleanas.
Comparação Usado para comparar entre elementos PQL diferentes. Mais informações sobre essas funções podem ser encontradas no documento de funções decomparação.
Matriz, lista e definido Usado para interagir com arrays, listas e conjuntos. Mais informações sobre essas funções podem ser encontradas no documento de funçõesarray, lista e set.
Mapa Costumava interagir com mapas. Mais informações sobre essas funções podem ser encontradas no documento de funções domapa.
String Costumava interagir com cordas. Mais informações sobre essas funções podem ser encontradas no documento de funções destring.
Objeto Usado para interagir com objetos. Mais informações sobre essas funções podem ser encontradas no documento de funções doobjeto.
Aritmética Usado para executar aritmética básica em elementos PQL. Mais informações sobre essas funções podem ser encontradas no documento de funções aritméticas
Agregação Usado para combinar os resultados de uma matriz em um resultado singular. Mais informações sobre as funções de agregação podem ser encontradas no documento das funções deagregação.
Data e hora Usado em conjunto com objetos date, time e datetime. Mais informações sobre essas funções podem ser encontradas no documento de funções dedata/hora.
Filtro Usado para filtrar dados em arrays. Mais informações sobre essas funções podem ser encontradas no documento de funções defiltro.
Quantificadores lógicos Usado para afirmar as condições em um storage. Mais informações podem ser encontradas no documento de quantificadoreslógicos.
Diversos As funções que não se encaixam em nenhuma das categorias acima podem ser encontradas no documento de funçõesdiversas.

Próximas etapas

Agora que você aprendeu a usar Profile Query Language, é possível usar o PQL ao criar e modificar segmentos. Para obter mais informações sobre segmentação, leia a visão geral dasegmentação.

Nesta página