Profile Query Language (PQL) es un lenguaje de consulta compatible con Experience Data Model (XDM) que está diseñado para admitir la definición y ejecución de consultas de segmentación para Real-time Customer Profile datos.
Esta guía proporciona una descripción general de PQL, que cubre las directrices de formato y proporciona ejemplos de expresiones PQL.
Las consultas PQL tienen la siguiente firma:
({INPUT_PARAMETER_1}, {INPUT_PARAMETER_2}, ...) => {RESULT_TYPE}
El parámetro de entrada puede ser un simple elemento primitivo, como un booleano o una cadena, o un tipo más complejo, como un objeto, una matriz o un mapa.
Existen tres formas diferentes de hacer referencia a los parámetros de entrada dentro del cuerpo de una expresión PQL:
En el ejemplo siguiente, ya que el primer parámetro siempre está en contexto, se puede hacer una referencia de propiedad (homeAddress
) directamente a él.
homeAddress.stateProvince = workAddress.stateProvince
En el ejemplo siguiente, $1
hace referencia al primer parámetro. Como resultado, $2
hace referencia al segundo parámetro, etc.
$1.homeAddress.stateProvince = $1.homeAddress.stateProvince
En el ejemplo siguiente, Profile
es un nombre de variable que puede elegir el autor de la consulta.
(Profile) => Profile.homeAddress.stateProvince = Profile.workAddress.stateProvince
PQL proporciona compatibilidad con los siguientes tipos de literales:
Literal | Definición | Ejemplo |
---|---|---|
Cadena | Tipo de datos compuesto por caracteres entre comillas dobles. | "pizza" , "jobs" , "antidisestablishmentarianism" |
Booleano | Tipo de datos verdadero o falso. | true , false |
Número entero | Un tipo de datos que representa un número entero. Puede ser positivo, negativo o cero. | -201 , 0 , 412 |
Duplicada | Un tipo de datos que representa cualquier número real. Puede ser positivo, negativo o cero. | -51.24 , 3.14 , 0.6942058 |
Fecha | Tipo de datos que se puede usar para crear fechas basadas en el año, mes y día como parámetros de entero. Tiene el formato date(year, month, day) |
date(2020, 3, 14) |
Matriz | Tipo de datos que se compone como grupo de otros valores literales. Utiliza corchetes para agrupar y comas para delimitar entre valores diferentes. Nota: No se puede acceder directamente a las propiedades de los elementos de una matriz. Por lo tanto, si necesita acceder a una propiedad dentro de una matriz, el método admitido es select X from array where X.item = ... . PQL reserva la palabra xEvent para hacer referencia a una matriz de eventos de experiencia vinculados a un perfil. |
[1, 4, 7] , ["US", "CA"] |
Referencias de tiempo relativas | Palabras reservadas que se pueden usar para crear referencias a intervalos de tiempo y marcas de tiempo.
|
X.timestamp occurs before today , X.timestamp occurs last month , X.timestamp occurs <= 3 days before now |
La siguiente tabla describe las diferentes categorías de funciones PQL compatibles, incluidos los vínculos a documentación adicional para obtener más información.
Categoría | Definición |
---|---|
Booleano | Se utiliza para implementar álgebra booleana en PQL. Puede encontrar más información sobre estas funciones en el documento de funciones booleanas. |
Comparación | Se utiliza para comparar diferentes elementos PQL. Puede encontrar más información sobre estas funciones en el documento de funciones de comparación. |
Matriz, lista y conjunto | Se utiliza para interactuar con matrices, listas y conjuntos. Puede encontrar más información sobre estas funciones en el documento array, list, and set functions document. |
Mapa | Se utiliza para interactuar con mapas. Puede encontrar más información sobre estas funciones en el documento de funciones de asignación. |
Cadena | Se utiliza para interactuar con cadenas. Puede encontrar más información sobre estas funciones en el documento de funciones de cadena. |
Objeto | Se utiliza para interactuar con objetos. Puede encontrar más información sobre estas funciones en el documento de funciones de objeto. |
Aritmética | Se utiliza para realizar aritmética básica en elementos PQL. Puede encontrar más información sobre estas funciones en el documento de funciones aritméticas |
Agregación | Se utiliza para combinar los resultados de una matriz en un resultado único. Puede encontrar más información sobre las funciones de agregación en el documento de funciones de agregación. |
Fecha y hora | Se utiliza junto con objetos date, time y date-time. Puede encontrar más información sobre estas funciones en el documento de funciones de fecha y hora. |
Filtro | Se utiliza para filtrar datos dentro de matrices. Puede encontrar más información sobre estas funciones en el documento filter functions document. |
cuantificadores lógicos | Se utiliza para afirmar condiciones dentro de una matriz. Encontrará más información en el documento de cuantificadores lógicos. |
Varios | Las funciones que no se ajustan a ninguna de las categorías anteriores se encuentran en el documento de funciones varias. |
Ahora que ha aprendido a utilizar Profile Query Language, puede utilizar PQL al crear y modificar segmentos. Para obtener más información sobre segmentación, lea la información general de segmentación.