Funciones de asignación de preparación de datos

Las funciones de preparación de datos se pueden utilizar para calcular y calcular valores basados en lo que se introduce en los campos de origen.

Campos

Un nombre de campo puede ser cualquier identificador válido: una secuencia de longitud ilimitada de letras Unicode y dígitos, que comienza con una letra, el signo de dólar ($) o el carácter de subrayado (_). Los nombres de variables también distinguen entre mayúsculas y minúsculas.

Si el nombre de un campo no sigue esta convención, el nombre del campo debe incluirse entre ${}. Por lo tanto, si el nombre de campo es "First Name" o "First.Name", el nombre debe incluirse entre ${First Name} o ${First\.Name} respectivamente.

TIP
Al interactuar con jerarquías, si un atributo secundario tiene un punto (.), debe utilizar una barra invertida (\) para omitir caracteres especiales. Para obtener más información, lea la guía de escape de caracteres especiales.

Además, si el nombre de un campo es cualquiera de las siguientes palabras clave reservadas, debe estar envuelto con ${}:

new, mod, or, break, var, lt, for, false, while, eq, gt, div, not, null, continue, else, and, ne, true, le, if, ge, return, _errors

Se puede acceder a los datos de los subcampos utilizando la notación de puntos. Por ejemplo, si había un name para acceder al objeto firstName campo, uso name.firstName.

Lista de funciones

En las tablas siguientes se enumeran todas las funciones de asignación admitidas, incluidas las expresiones de muestra y sus resultados.

Funciones de cadena string

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
concat
Concatena las cadenas dadas.
  • STRING: cadenas que se concatenarán.
concat(CADENA_1, CADENA_2)
concat("Hola, ", "hay", "!")
"Hi, there!"
explotar
Divide la cadena en función de una regex y devuelve una matriz de partes. Opcionalmente, puede incluir regex para dividir la cadena. De forma predeterminada, la división se resuelve en ",". Los delimitadores siguientes necesidad para escapar con \: +, ?, ^, |, ., [, (, {, ), *, $, \ Si incluye varios caracteres como delimitador, el delimitador se tratará como un delimitador de varios caracteres.
  • CADENA: Requerido La cadena que debe dividirse.
  • REGEX: Opcional La expresión regular que se puede utilizar para dividir la cadena.
explode(STRING, REGEX)
explode("Hola, ¡ahí!", "")
["Hi,", "there"]
instr
Devuelve la ubicación o el índice de una subcadena.
  • ENTRADA: Requerido La cadena que se está buscando.
  • SUBCADENA: Requerido La subcadena que se busca dentro de la cadena.
  • POSICIÓN_INICIAL: Opcional La ubicación de dónde empezar a buscar en la cadena.
  • OCURRENCIA: Opcional La enésima ocurrencia que se busca desde la posición de inicio. De forma predeterminada, se establece en 1.
instr(INPUT, SUBSTRING, START_POSITION, OCCURRENCE)
instr("adobe.com", "com")
6
reemplazantes
Reemplaza la cadena de búsqueda si está presente en la cadena original.
  • ENTRADA: Requerido La cadena de entrada.
  • TO_FIND: Requerido Cadena que se busca en la entrada.
  • TO_REPLACE: Requerido La cadena que reemplazará el valor dentro de "TO_FIND".
replace(INPUT, TO_FIND, TO_REPLACE)
replace("Esto es una cadena re-test", "re", "replace")
"Esta es una prueba de reemplazo de cadena"
substr
Devuelve una subcadena de una longitud determinada.
  • ENTRADA: Requerido La cadena de entrada.
  • START_INDEX: Requerido Índice de la cadena de entrada donde comienza la subcadena.
  • LONGITUD: Requerido Longitud de la subcadena.
substr(INPUT, START_INDEX, LENGTH)
substr("This is a substring test", 7, 8)
"un subconjunto"
lower /
lcase
Convierte una cadena a minúsculas.
  • ENTRADA: Requerido La cadena que se convertirá a minúsculas.
lower(INPUT)
lower("HeLo")
lcase("HeLo")
"hola"
upper /
ucase
Convierte una cadena a mayúsculas.
  • ENTRADA: Requerido La cadena que se convertirá a mayúsculas.
upper(ENTRADA)
upper("HeLo")
ucase("HeLo")
"HOLA"
split
Divide una cadena de entrada en un separador. El siguiente separador necesidades para escapar con \: \. Si incluye varios delimitadores, la cadena se dividirá en cualquiera de los delimitadores presentes en la cadena. Nota: Esta función solo devuelve índices no nulos de la cadena, independientemente de la presencia del separador. Si se requieren todos los índices, incluidos los valores nulos, en la matriz resultante, utilice la función "explode" en su lugar.
  • ENTRADA: Requerido La cadena de entrada que se va a dividir.
  • SEPARADOR: Requerido Cadena que se utiliza para dividir la entrada.
split(ENTRADA, SEPARADOR)
split("Hello world", " ")
["Hello", "world"]
unirse
Une una lista de objetos mediante el separador.
  • SEPARADOR: Requerido Cadena que se utilizará para unir los objetos.
  • OBJETOS: Requerido Matriz de cadenas que se unirán.
join(SEPARATOR, [OBJECTS])
join(" ", to_array(true, "Hello", "world"))
"Hola mundo"
lpad
Rellena el lado izquierdo de una cadena con la otra cadena dada.
  • ENTRADA: Requerido La cadena que se va a rellenar. Esta cadena puede ser nula.
  • RECUENTO: Requerido El tamaño de la cadena que se va a rellenar.
  • RELLENO: Requerido Cadena con la que se rellena la entrada. Si es nulo o está vacío, se tratará como un solo espacio.
lpad(ENTRADA, RECUENTO, RELLENO)
lpad("bat", 8, "yz")
"yzybat"
rpad
Rellena el lado derecho de una cadena con la otra cadena dada.
  • ENTRADA: Requerido La cadena que se va a rellenar. Esta cadena puede ser nula.
  • RECUENTO: Requerido El tamaño de la cadena que se va a rellenar.
  • RELLENO: Requerido Cadena con la que se rellena la entrada. Si es nulo o está vacío, se tratará como un solo espacio.
rpad(ENTRADA, RECUENTO, RELLENO)
rpad("bat", 8, "yz")
"batyzyzy"
left
Obtiene los primeros caracteres "n" de la cadena dada.
  • CADENA: Requerido La cadena para la que obtiene los primeros caracteres "n".
  • RECUENTO: Requerido Los caracteres "n" que desee obtener de la cadena.
left(CADENA, RECUENTO)
left("abcde", 2)
"ab"
derecha
Obtiene los últimos "n" caracteres de la cadena dada.
  • CADENA: Requerido La cadena para la que se obtienen los últimos caracteres "n".
  • RECUENTO: Requerido Los caracteres "n" que desee obtener de la cadena.
right(STRING, COUNT)
right("abcde", 2)
"de"
ltrim
Elimina el espacio en blanco del principio de la cadena.
  • CADENA: Requerido La cadena de la que desea eliminar el espacio en blanco.
ltrim(CADENA)
ltrim(" hello")
"hola"
rtrim
Elimina el espacio en blanco del final de la cadena.
  • CADENA: Requerido La cadena de la que desea eliminar el espacio en blanco.
rtrim(CADENA)
rtrim("hello ")
"hola"
trim
Elimina el espacio en blanco del principio y del final de la cadena.
  • CADENA: Requerido La cadena de la que desea eliminar el espacio en blanco.
trim(CADENA)
trim(" hello ")
"hola"
es igual que
Compara dos cadenas para confirmar si son iguales. Esta función distingue entre mayúsculas y minúsculas.
  • CADENA1: Requerido La primera cadena que desea comparar.
  • CADENA2: Requerido La segunda cadena que desea comparar.
CADENA1.​es igual a( CADENA2)
"cadena1".​igual a​("STRING1")
false
igual a IgnoreCase
Compara dos cadenas para confirmar si son iguales. Esta función es no distingue mayúsculas de minúsculas.
  • CADENA1: Requerido La primera cadena que desea comparar.
  • CADENA2: Requerido La segunda cadena que desea comparar.
CADENA1.​igual a IgnoreCase​(STRING2)
"cadena1".​igual a IgnoreCase​("STRING1)
true

Funciones de expresión regular

Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
extract_regex
Extrae grupos de la cadena de entrada en función de una expresión regular.
  • CADENA: Requerido Cadena de la que se extraen los grupos.
  • REGEX: Requerido La expresión regular con la que desea que coincida el grupo.
extract_regex(STRING, REGEX)
extract_regex​("E259,E259B_009,1_1"​, "([,]+),[,]*,([^,]+)")
["E259,E259B_009,1_1", "E259", "1_1"]
matches_regex
Comprueba si la cadena coincide con la expresión regular introducida.
  • CADENA: Requerido La cadena que está comprobando coincide con la expresión regular.
  • REGEX: Requerido La expresión regular con la que está comparando.
matches_regex(STRING, REGEX)
matches_regex("E259,E259B_009,1_1", "([,]+),[,]*,([^,]+)")
true

Funciones hash hashing

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
sha1
Toma una entrada y produce un valor hash utilizando el algoritmo hash seguro 1 (SHA-1).
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
sha1(INPUT, CHARSET)
sha1("mi texto", "UTF-8")
c3599c11e47719df18a24 48690840c5dfcce3c80
sha256
Toma una entrada y produce un valor hash utilizando el algoritmo hash seguro 256 (SHA-256).
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
sha256(ENTRADA, CHARSET)
sha256("mi texto", "UTF-8")
7330d2b39ca35eaf4cb95fc846c21 ee6a39af698154a83a586ee270a0d372104
sha512
Toma una entrada y produce un valor hash utilizando el algoritmo hash seguro 512 (SHA-512).
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
sha512(ENTRADA, CHARSET)
sha512("mi texto", "UTF-8")
a3d7e45a0d9be5fd4e4b9a3b8c9c2163c21ef 708bf11b4232bb21d2a8704ada2cdcd7b367dd078a89 a5c908cfe377aceb1072a7b 386b7d4fd2ff68a8fd24d16
md5
Toma una entrada y produce un valor hash con MD5.
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
md5(INPUT, CHARSET)
md5("mi texto", "UTF-8")
d3b96ce8c9fb4 e9bd0198d03ba6852c7
crc32
Toma una entrada utiliza un algoritmo de comprobación de redundancia cíclica (CRC) para producir un código cíclico de 32 bits.
  • ENTRADA: Requerido Texto sin formato que se va a cifrar con hash.
  • CHARSET: Opcional Nombre del conjunto de caracteres. Los valores posibles incluyen UTF-8, UTF-16, ISO-8859-1 y US-ASCII.
crc32(INPUT, CHARSET)
crc32("mi texto", "UTF-8")
8df92e80

Funciones de URL url

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
get_url_protocol
Devuelve el protocolo de la dirección URL determinada. Si la entrada no es válida, devuelve nulo.
  • URL: Requerido Dirección URL de la que se debe extraer el protocolo.
get_url_protocol​(URL)
get_url_protocol("https://platform .adobe.com/home")
https
get_url_host
Devuelve el host de la URL determinada. Si la entrada no es válida, devuelve nulo.
  • URL: Requerido Dirección URL de la que se debe extraer el host.
get_url_host​(URL)
get_url_host​("https://platform .adobe.com/home")
platform.adobe.com
get_url_port
Devuelve el puerto de la dirección URL determinada. Si la entrada no es válida, devuelve nulo.
  • URL: Requerido Dirección URL de la que debe extraerse el puerto.
get_url_port(URL)
get_url_port​("sftp://example.com//home/ joe/employee.csv")
22
get_url_path
Devuelve la ruta de la dirección URL determinada. De forma predeterminada, se devuelve la ruta de acceso completa.
  • URL: Requerido Dirección URL de la que se debe extraer la ruta.
  • RUTA_COMPLETA: Opcional Un valor booleano que determina si se devuelve la ruta de acceso completa. Si se establece en false, solo se devuelve el final de la ruta.
get_url_path​(URL, FULL_PATH)
get_url_path​("sftp://example.com// home/joe/employee.csv")
"//home/joe/ employee.csv"
get_url_query_str
Devuelve la cadena de consulta de una dirección URL determinada como un mapa del nombre y el valor de la cadena de consulta.
  • URL: Requerido Dirección URL desde la que intenta obtener la cadena de consulta.
  • ANCLAJE: Requerido Determina qué se hará con el anclaje en la cadena de consulta. Puede ser uno de los tres valores siguientes: "keep", "remove" o "append".

    Si el valor es "conservar", el anclaje se adjunta al valor devuelto.
    Si el valor es "remove", el anclaje se eliminará del valor devuelto.
    Si el valor es "anexar", el anclaje se devuelve como un valor independiente.
get_url_query_str​(URL, ANCLAJE)
get_url_query_str​("foo://example.com:8042​/over/there?name= ferret#nose", "keep")
get_url_query_str​("foo://example.com:8042​/over/there?name= ferret#nose", "remove")
get_url_query_str​("foo://example.com​:8042/over/there​?name=ferret#nose", "append")
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}
get_url_encoded
Esta función toma una URL como entrada y reemplaza o codifica los caracteres especiales con caracteres ASCII. Para obtener más información sobre los caracteres especiales, lea la lista de caracteres especiales en el apéndice del presente documento.
  • URL: Requerido La dirección URL de entrada con caracteres especiales que desea reemplazar o codificar con caracteres ASCII.
get_url_encoded(URL)
get_url_encoded("https://example.com/partneralliance_asia-pacific_2022")
https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacífico_2022
get_url_decoded
Esta función toma una URL como entrada y descodifica los caracteres ASCII en caracteres especiales. Para obtener más información sobre los caracteres especiales, lea la lista de caracteres especiales en el apéndice del presente documento.
  • URL: Requerido La dirección URL de entrada con caracteres ASCII que desea descodificar en caracteres especiales.
get_url_decoded(URL)
get_url_decoded("https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacífico_2022")
https://example.com/partneralliance_asia-pacífico_2022

Funciones de fecha y hora date-and-time

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla. Más información sobre la date se puede encontrar en la sección de fechas de la guía de gestión de formato de datos.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
now
Recupera la hora actual.
now()
now()
2021-10-26T10:10:24Z
timestamp
Recupera la hora Unix actual.
timestamp()
timestamp()
1571850624571
formato
Aplica formato a la fecha de entrada según un formato especificado.
  • FECHA: Requerido La fecha de entrada, como objeto ZonedDateTime, a la que desea dar formato.
  • FORMATO: Requerido El formato al que desea cambiar la fecha.
format(DATE, FORMAT)
formato(2019-10-23T11:24:00+00:00, "yyyy-MM-dd HH:mm:ss")
2019-10-23 11:24:35
dformat
Convierte una marca de tiempo en una cadena de fecha según un formato especificado.
  • MARCA DE TIEMPO: Requerido La marca de tiempo a la que desea dar formato. Esto se escribe en milisegundos.
  • FORMATO: Requerido El formato en el que desea que se convierta la marca de tiempo.
dformat(TIMESTAMP, FORMAT)
dformat(1571829875000, "yyyy-MM-dd'T'HH:mm:ss.SSSX")
2019-10-23T11:24:35.000Z
date
Convierte una cadena de fecha en un objeto ZonedDateTime (formato ISO 8601).
  • FECHA: Requerido Cadena que representa la fecha.
  • FORMATO: Requerido Cadena que representa el formato de la fecha de origen.Nota: Esto sí no representa el formato en el que desea convertir la cadena de fecha.
  • FECHA_PREDETERMINADA: Requerido Se devuelve la fecha predeterminada si la fecha proporcionada es nula.
date(FECHA, FORMATO, FECHA_PREDETERMINADA)
date("2019-10-23 11:24", "aaaa-MM-dd HH:mm", now())
2019-10-23T11:24:00Z
date
Convierte una cadena de fecha en un objeto ZonedDateTime (formato ISO 8601).
  • FECHA: Requerido Cadena que representa la fecha.
  • FORMATO: Requerido Cadena que representa el formato de la fecha de origen.Nota: Esto sí no representa el formato en el que desea convertir la cadena de fecha.
date(FECHA, FORMATO)
date("2019-10-23 11:24", "aaaa-MM-dd HH:mm")
2019-10-23T11:24:00Z
date
Convierte una cadena de fecha en un objeto ZonedDateTime (formato ISO 8601).
  • FECHA: Requerido Cadena que representa la fecha.
date(FECHA)
date("2019-10-23 11:24")
"2019-10-23T11:24:00Z"
date_part
Recupera las partes de la fecha. Se admiten los siguientes valores de componente:

"año"
"yyyy"
"aa"

"trimestre"
"qq"
"q"

"mes"
"mm"
"m"

"dayofyear"
"día"
"y"

"día"
"dd"
"d"

"semana"
"ww"
"w"

"día laborable"
"dw"
"w"

"hour"
"hh"
"hh24"
"hh12"

"minuto"
"mi"
"n"

"segundo"
"ss"
"s"

"milisegundo"
"SSS"
  • COMPONENTE: Requerido Una cadena que representa la parte de la fecha.
  • FECHA: Requerido La fecha, en un formato estándar.
date_part​(COMPONENT, DATE)
date_part("MM", date("2019-10-17 11:55:12")
10
set_date_part
Reemplaza un componente en una fecha determinada. Se aceptan los siguientes componentes:

"año"
"yyyy"
"aa"

"mes"
"mm"
"m"

"día"
"dd"
"d"

"hour"
"hh"

"minuto"
"mi"
"n"

"segundo"
"ss"
"s"
  • COMPONENTE: Requerido Una cadena que representa la parte de la fecha.
  • VALOR: Requerido Valor que se va a establecer para el componente en una fecha determinada.
  • FECHA: Requerido La fecha, en un formato estándar.
set_date_part​(COMPONENT, VALUE, DATE)
set_date_part("m", 4, date("2016-11-09T11:44:44,797")
"2016-04-09T11:44:44 Z"
make_date_time
Crea una fecha a partir de artículos. Esta función también se puede inducir usando make_timestamp.
  • AÑO: Requerido El año, escrito con cuatro dígitos.
  • MES: Requerido El mes. Los valores permitidos son del 1 al 12.
  • DÍA: Requerido El día. Los valores permitidos son del 1 al 31.
  • HORA: Requerido La hora. Los valores permitidos son de 0 a 23.
  • MINUTO: Requerido El minuto. Los valores permitidos son de 0 a 59.
  • NANOSEGUNDO: Requerido Los valores de nanosegundo. Los valores permitidos son de 0 a 999999999.
  • ZONA HORARIA: Requerido Zona horaria de la fecha y hora.
make_date_time​(YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, NANOSECOND, TIMEZONE)
make_date_time​(2019, 10, 17, 11, 55, 12, 999, "América/Los_Ángeles")
2019-10-17T11:55:12Z
zone_date_to_utc
Convierte una fecha de cualquier zona horaria en una fecha en UTC.
  • FECHA: Requerido La fecha que está intentando convertir.
zone_date_to_utc​(DATE)
zone_date_to_utc​(2019-10-17T11:55:​12 PST
2019-10-17T19:55:12Z
zone_date_to_zone
Convierte una fecha de una zona horaria a otra.
  • FECHA: Requerido La fecha que está intentando convertir.
  • ZONA: Requerido Zona horaria a la que intenta convertir la fecha.
zone_date_to_zone​(DATE, ZONE)
zone_date_to_utc​(now(), "Europe/Paris")
2021-10-26T15:43:59Z

Jerarquías: objetos objects

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
is_empty
Comprueba si un objeto está o no vacío.
  • ENTRADA: Requerido El objeto que está intentando comprobar está vacío.
is_empty(INPUT)
is_empty([1, null, 2, 3])
false
array_to_object
Crea una lista de objetos.
  • ENTRADA: Requerido Una agrupación de pares de claves y matrices.
array_to_object(INPUT)
arrays_to_objects('sku', explode("id1|id2", '\\|'), 'price', [22.5,14.35])
[{ "sku": "id1", "price": 22.5 }, { "sku": "id2", "price": 14.35 }]
to_object
Crea un objeto basado en los pares de clave/valor plano dados.
  • ENTRADA: Requerido Una lista plana de pares de clave/valor.
to_object(INPUT)
to_object​("firstName", "John", "lastName", "Doe")
{"firstName": "John", "lastName": "Doe"}
str_to_object
Crea un objeto de la cadena de entrada.
  • CADENA: Requerido Cadena que se está analizando para crear un objeto.
  • VALUE_DELIMITER: Opcional El delimitador que separa un campo del valor. El delimitador predeterminado es :.
  • FIELD_DELIMITER: Opcional El delimitador que separa los pares de valor de campo. El delimitador predeterminado es ,.
str_to_object​(STRING, VALUE_DELIMITER, FIELD_DELIMITER) Nota: Puede utilizar el get() función junto con str_to_object() para recuperar los valores de las claves de la cadena.
  • Ejemplo #1: str_to_object("firstName - John ; lastName - ; - 123 345 7890", "-", ";")
  • Ejemplo #2: str_to_object("firstName - John ; lastName - ; phone - 123 456 7890", "-", ";").get("firstName")
  • Ejemplo de #1:{"firstName": "John", "lastName": "Doe", "phone": "123 456 7890"}
  • Ejemplo #2: "John"
contains_key
Comprueba si el objeto existe en los datos de origen. Nota: Esta función sustituye a la función obsoleta. is_set() función.
  • ENTRADA: Requerido La ruta que se debe comprobar si existe dentro de los datos de origen.
contains_key(INPUT)
contains_key("evars.evar.field1")
true
anular
Establece el valor del atributo en null. Debe utilizarse cuando no desee copiar el campo en el esquema de destino.
nullify()
nullify()
null
get_keys
Analiza los pares clave/valor y devuelve todas las claves.
  • OBJETO: Requerido El objeto del que se extraerán las claves.
get_keys(OBJECT)
get_keys({"book1": "Pride and Prejudice", "book2": "1984"})
["book1", "book2"]
get_values
Analiza los pares clave/valor y devuelve el valor de la cadena, en función de la clave dada.
  • CADENA: Requerido La cadena que desea analizar.
  • CLAVE: Requerido La clave para la que se debe extraer el valor.
  • VALUE_DELIMITER: Requerido El delimitador que separa el campo y el valor. Si una null Si se proporciona una cadena vacía, este valor es :.
  • FIELD_DELIMITER: Opcional El delimitador que separa los pares de campo y valor. Si una null Si se proporciona una cadena vacía, este valor es ,.
get_values(STRING, KEY, VALUE_DELIMITER, FIELD_DELIMITER)
get_values("firstName - John , lastName - Cena , phone - 555 420 8692", "firstName", "-", ",")
John
map_get_values
Toma un mapa y una entrada de clave. Si la entrada es una clave única, la función devuelve el valor asociado a esa clave. Si la entrada es una matriz de cadenas, la función devuelve todos los valores correspondientes a las claves proporcionadas. Si el mapa entrante tiene claves duplicadas, el valor devuelto debe anular la duplicación de las claves y devolver valores únicos.
  • MAPA: Requerido Los datos del mapa de entrada.
  • CLAVE: Requerido La clave puede ser una sola cadena o una matriz de cadenas. Si se proporciona cualquier otro tipo primitivo (datos/número), se trata como una cadena.
get_values(MAP, KEY)
Consulte la apéndice para obtener un ejemplo de código.
map_has_keys
Si se proporcionan una o más claves de entrada, la función devuelve true. Si se proporciona una matriz de cadenas como entrada, la función devuelve true en la primera clave encontrada.
  • MAPA: Requerido Los datos del mapa de entrada
  • CLAVE: Requerido La clave puede ser una sola cadena o una matriz de cadenas. Si se proporciona cualquier otro tipo primitivo (datos/número), se trata como una cadena.
map_has_keys(MAP, KEY)
Consulte la apéndice para obtener un ejemplo de código.
add_to_map
Acepta al menos dos entradas. Se puede proporcionar cualquier cantidad de mapas como entradas. La preparación de datos devuelve un solo mapa que tiene todos los pares clave-valor de todas las entradas. Si se repiten una o más claves (en el mismo mapa o entre mapas), la preparación de datos anula la duplicación de las claves para que el primer par clave-valor persista en el orden en que se pasaron en la entrada.
MAPA: Requerido Los datos del mapa de entrada.
add_to_map(MAPA 1, MAPA 2, MAPA 3, …)
Consulte la apéndice para obtener un ejemplo de código.
object_to_map (Sintaxis 1)
Utilice esta función para crear tipos de datos de mapa.
  • CLAVE: Requerido Las claves deben ser una cadena. Si se proporciona cualquier otro valor primitivo, como números enteros o fechas, se convierten automáticamente en cadenas y se tratan como cadenas.
  • ANY_TYPE: Requerido Hace referencia a cualquier tipo de datos XDM admitido, excepto Mapas.
object_to_map(KEY, ANY_TYPE, KEY, ANY_TYPE, … )
Consulte la apéndice para obtener un ejemplo de código.
object_to_map (Sintaxis 2)
Utilice esta función para crear tipos de datos de mapa.
  • OBJETO: Requerido Puede proporcionar un objeto entrante o una matriz de objetos y señalar a un atributo dentro del objeto como clave.
object_to_map(OBJECT)
Consulte la apéndice para obtener un ejemplo de código.
object_to_map (Sintaxis 3)
Utilice esta función para crear tipos de datos de mapa.
  • OBJETO: Requerido Puede proporcionar un objeto entrante o una matriz de objetos y señalar a un atributo dentro del objeto como clave.
object_to_map(OBJECT_ARRAY, ATTRIBUTE_IN_OBJECT_TO_BE_USED_AS_A_KEY)
Consulte la apéndice para obtener un ejemplo de código.

Para obtener información sobre la función de copia de objetos, consulte la sección abajo.

Jerarquías - Matrices arrays

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
fundirse
Devuelve el primer objeto no nulo de una matriz determinada.
  • ENTRADA: Requerido La matriz de la que desea encontrar el primer objeto no nulo.
coalesce(INPUT)
coalesce(null, null, null, "first", null, "second")
"primero"
primero
Recupera el primer elemento de la matriz determinada.
  • ENTRADA: Requerido La matriz de la que desea encontrar el primer elemento.
first(INPUT)
first("1", "2", "3")
"1"
último
Recupera el último elemento de la matriz determinada.
  • ENTRADA: Requerido La matriz de la que desea encontrar el último elemento.
last(INPUT)
last("1", "2", "3")
"3"
add_to_array
Añade elementos al final de la matriz.
  • MATRIZ: Requerido La matriz a la que está agregando elementos.
  • VALUES: Los elementos que desea anexar a la matriz.
add_to_array​(MATRIZ, VALORES)
add_to_array​(['a', 'b'], 'c', 'd')
['a', 'b', 'c', 'd']
join_array
Combina las matrices entre sí.
  • MATRIZ: Requerido La matriz a la que está agregando elementos.
  • VALUES: Las matrices que desea anexar a la matriz principal.
join_array​(ARRAY, VALUES)
join_array​(['a', 'b'], ['c'], ['d', 'e'])
['a', 'b', 'c', 'd', 'e']
to_array
Toma una lista de entradas y la convierte en una matriz.
  • INCLUDE_NULLS: Requerido Un valor booleano para indicar si se deben incluir o no valores nulos en la matriz de respuesta.
  • VALORES: Requerido Elementos que se van a convertir en una matriz.
to_array​(INCLUDE_NULLS, VALUES)
to_array(false, 1, null, 2, 3)
[1, 2, 3]
size_of
Devuelve el tamaño de la entrada.
  • ENTRADA: Requerido El objeto del que intenta encontrar el tamaño.
size_of(INPUT)
size_of([1, 2, 3, 4])
4
upsert_array_append
Esta función se utiliza para anexar todos los elementos de toda la matriz de entrada al final de la matriz en Profile. Esta función es solamente aplicable durante las actualizaciones. Si se utiliza en el contexto de las inserciones, esta función devuelve la entrada tal cual.
  • MATRIZ: Requerido Matriz que se anexará a la matriz en el perfil.
upsert_array_append(ARRAY)
upsert_array_append([123, 456])
[124, 456]
upsert_array_replace
Esta función se utiliza para reemplazar elementos en una matriz. Esta función es solamente aplicable durante las actualizaciones. Si se utiliza en el contexto de las inserciones, esta función devuelve la entrada tal cual.
  • MATRIZ: Requerido Matriz que reemplaza la matriz en el perfil.
upsert_array_replace(ARRAY)
upsert_array_replace([123, 456], 1)
[124, 456]

Jerarquías: asignación map

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
array_to_map
Esta función toma una matriz de objetos y una clave como entrada y devuelve un mapa del campo de la clave con el valor como clave y el elemento de matriz como valor.
  • ENTRADA: Requerido Matriz de objetos de la que desea encontrar el primer objeto no nulo.
  • CLAVE: Requerido La clave debe ser un nombre de campo en la matriz de objetos y el objeto como valor.
array_to_map(OBJETO[] ENTRADAS, CLAVE)
Lea el apéndice para obtener un ejemplo de código.
object_to_map
Esta función toma un objeto como argumento y devuelve un mapa de pares clave-valor.
  • ENTRADA: Requerido Matriz de objetos de la que desea encontrar el primer objeto no nulo.
object_to_map(OBJECT_INPUT)
"object_to_map(address) donde input es " + "address: {line1 : "345 park ave",line2: "bldg 2",City : "san jose",State : "CA",type: "office"}"
Devuelve un mapa con pares de nombre y valor de campo determinados o nulo si la entrada es nula. Por ejemplo: "{line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}"
to_map
Esta función toma una lista de pares clave-valor y devuelve un mapa de pares clave-valor.
to_map(OBJECT_INPUT)
"to_map("firstName", "John", "lastName", "Doe")"
Devuelve un mapa con pares de nombre y valor de campo determinados o nulo si la entrada es nula. Por ejemplo: "{\"firstName\" : \"John\", \"lastName\": \"Doe\"}"

Operadores lógicos logical-operators

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
decode
Dadas una clave y una lista de pares de valor clave acoplados como una matriz, la función devuelve el valor si se encuentra la clave o devuelve un valor predeterminado si está presente en la matriz.
  • CLAVE: Requerido La clave con la que se debe hacer coincidir.
  • OPTIONS: Requerido Matriz aplanada de pares de clave/valor. De forma opcional, se puede colocar un valor predeterminado al final.
decode(KEY, OPTIONS)
decode(stateCode, "ca", "California", "pa", "Pennsylvania", "N/A")
Si el stateCode proporcionado es "ca", "California".
Si el stateCode proporcionado es "pa", "Pennsylvania".
Si el código de estado no coincide con lo siguiente, "N/A".
iif
Evalúa una expresión booleana determinada y devuelve el valor especificado en función del resultado.
  • EXPRESIÓN: Requerido La expresión booleana que se está evaluando.
  • VALOR_VERDADERO: Requerido El valor que se devuelve si la expresión se evalúa como verdadera.
  • VALOR_FALSO: Requerido El valor que se devuelve si la expresión se evalúa como falsa.
iif(EXPRESSION, TRUE_VALUE, FALSE_VALUE)
iif("s".equalsIgnoreCase("S"), "True", "False")
"True"

Agregación aggregation

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
min
Devuelve el mínimo de los argumentos dados. Utiliza el orden natural.
  • OPTIONS: Requerido Uno o más objetos que se pueden comparar entre sí.
min(OPTIONS)
min(3, 1, 4)
1
max
Devuelve el máximo de los argumentos dados. Utiliza el orden natural.
  • OPTIONS: Requerido Uno o más objetos que se pueden comparar entre sí.
max(OPTIONS)
max(3, 1, 4)
4

Escribir conversiones type-conversions

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
to_bigint
Convierte una cadena en un BigInteger.
  • CADENA: Requerido La cadena que se va a convertir en un BigInteger.
to_bigint(STRING)
to_bigint​("1000000.34")
1000000,34
to_decimal
Convierte una cadena en un valor Double.
  • CADENA: Requerido La cadena que se va a convertir en un valor de tipo Double.
to_decimal(STRING)
to_decimal("20.5")
20,5
to_float
Convierte una cadena en flotante.
  • CADENA: Requerido La cadena que se va a convertir en flotante.
to_float(STRING)
to_float("12.3456")
12,34566
to_integer
Convierte una cadena en un número entero.
  • CADENA: Requerido La cadena que se va a convertir en un número entero.
to_integer(CADENA)
to_integer("12")
12

Funciones JSON json

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
json_to_object
Deserialice el contenido JSON de la cadena determinada.
  • CADENA: Requerido Cadena JSON que se va a deserializar.
json_to_object​(STRING)
json_to_object​({"info":{"firstName":"John","lastName": "Doe"}})
Un objeto que representa el JSON.

Operaciones especiales special-operations

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
uuid /
guid
Genera un ID pseudoaleatorio.
uuid()
guid()
uuid()
guid()
7c0267d2-bb74-4e1a-9275-3bf4fccda5f4
c7016dc7-3163-43f7-afc7-2e1c9c206333
fpid_to_ecid
Esta función toma una cadena FPID y la convierte en un ECID para su uso en aplicaciones de Adobe Experience Platform y Adobe Experience Cloud.
  • CADENA: Requerido Cadena FPID que se va a convertir en ECID.
fpid_to_ecid(STRING)
fpid_to_ecid("4ed70bee-b654-420a-a3fd-b58b6b65e991")
"28880788470263023831040523038280731744"

Funciones del agente de usuario user-agent

Cualquiera de las funciones de agente de usuario que se incluyen en la tabla siguiente puede devolver cualquiera de los siguientes valores:

  • Teléfono: dispositivo móvil con pantalla pequeña (normalmente < 7")
  • Móvil: dispositivo móvil que aún no se ha identificado. Este dispositivo móvil puede ser un eReader, una tableta, un teléfono, un reloj, etc.

Para obtener más información sobre los valores de los campos de dispositivo, lea la lista de valores de campo de dispositivo en el apéndice del presente documento.

NOTE
Desplácese hacia la izquierda/derecha para ver todo el contenido de la tabla.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
ua_os_name
Extrae el nombre del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_name​(USER_AGENT)
ua_os_name​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
iOS
ua_os_version_major
Extrae la versión principal del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_version_major​(USER_AGENT)
ua_os_version_major s("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
IOS 5
ua_os_version
Extrae la versión del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_version​(USER_AGENT)
ua_os_version​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
5.1.1
ua_os_name_version
Extrae el nombre y la versión del sistema operativo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_os_name_version​(USER_AGENT)
ua_os_name_version​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
iOS 5.1.1
ua_agent_version
Extrae la versión del agente de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_agent_version​(USER_AGENT)
ua_agent_version​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
5,1
ua_agent_version_major
Extrae el nombre del agente y la versión principal de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_agent_version_major​(USER_AGENT)
ua_agent_version_major​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
Safari 5
ua_agent_name
Extrae el nombre del agente de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_agent_name​(USER_AGENT)
ua_agent_name​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
Safari
ua_device_class
Extrae la clase de dispositivo de la cadena del agente de usuario.
  • USER_AGENT: Requerido Cadena del agente de usuario.
ua_device_class​(USER_AGENT)
ua_device_class​("Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 como Mac OS X) AppleWebKit/534.46 (KHTML, como Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3")
Teléfono

Funciones de Analytics analytics

NOTE
Solo puede utilizar las siguientes funciones de análisis para flujos de WebSDK y Adobe Analytics.
Función
Descripción
Parámetros
Sintaxis
Expresión
Salida de ejemplo
aa_get_event_id
Extrae el ID de evento de una cadena de eventos de Analytics.
  • EVENT_STRING: Requerido Cadena de evento de Analytics separados por comas.
  • NOMBRE_EVENTO: Requerido Nombre del evento del que se extraerán los datos y el ID.
aa_get_event_id(EVENT_STRING, EVENT_NAME)
aa_get_event_id("event101=5:123456,scOpen", "event101")
123456
aa_get_event_value
Extrae el valor del evento de una cadena de eventos de Analytics. Si no se especifica el valor del evento, se devuelve 1.
  • EVENT_STRING: Requerido Cadena de evento de Analytics separados por comas.
  • NOMBRE_EVENTO: Requerido El nombre del evento del que extraer un valor.
aa_get_event_value(EVENT_STRING, EVENT_NAME)
aa_get_event_value("event101=5:123456,scOpen", "event101")
5
aa_get_product_categories
Extrae la categoría de producto de una cadena de productos de Analytics.
  • PRODUCTS_STRING: Requerido La cadena de productos de Analytics.
aa_get_product_categories(PRODUCTS_STRING)
aa_get_product_categories(";Ejemplo de producto 1;1;3.50,Ejemplo de categoría 2;Ejemplo de producto 2;1;5.99")
[null,"Ejemplo de categoría 2"]
aa_get_product_names
Extrae el nombre de un producto de una cadena de productos de Analytics.
  • PRODUCTS_STRING: Requerido La cadena de productos de Analytics.
aa_get_product_names(PRODUCTS_STRING)
aa_get_product_names(";Ejemplo de producto 1;1;3.50,Ejemplo de categoría 2;Ejemplo de producto 2;1;5.99")
["Ejemplo de producto 1","Ejemplo de producto 2"]
aa_get_product_quantity
Extrae las cantidades de una cadena de productos de Analytics.
  • PRODUCTS_STRING: Requerido La cadena de productos de Analytics.
aa_get_product_quantity(PRODUCTS_STRING)
aa_get_product_quantity(";Ejemplo de producto 1;1;3.50,Ejemplo de categoría 2;Ejemplo de producto 2")
["1", nulo]
aa_get_product_price
Extrae el precio de una cadena de productos de Analytics.
  • PRODUCTS_STRING: Requerido La cadena de productos de Analytics.
aa_get_product_price(PRODUCTS_STRING)
aa_get_product_price(";Ejemplo de producto 1;1;3.50,Ejemplo de categoría 2;Ejemplo de producto 2")
["3,50", nulo]
aa_get_product_event_values
Extrae los valores del evento con nombre de la cadena de products como una matriz de cadenas.
  • PRODUCTS_STRING: Requerido La cadena de productos de Analytics.
  • NOMBRE_EVENTO: Requerido Nombre del evento del que se extraerán valores.
aa_get_product_event_values(PRODUCTS_STRING, EVENT_NAME)
aa_get_product_event_values(";Ejemplo product 1;1;4.20;event1=2.3|event2=5:1,;Ejemplo product 2;1;4.20;event1=3|event2=2:2", "event1")
["2,3", "3"]
aa_get_product_evars
Extrae los valores de eVar del evento con nombre de la cadena de products como una matriz de cadenas.
  • PRODUCTS_STRING: Requerido La cadena de productos de Analytics.
  • NOMBRE_eVar: Requerido Nombre del eVar que se va a extraer.
aa_get_product_evars(PRODUCTS_STRING, EVENT_NAME)
aa_get_product_evars(";Ejemplo de producto;1;6.69;;eVar 1=Valor de comercialización", "eVar 1")
["Valor de comercialización"]

Copia de objeto object-copy

TIP
La función de copia de objetos se aplica automáticamente cuando un objeto del origen se asigna a un objeto del XDM. No se necesitan acciones adicionales de los usuarios.

Puede utilizar la función de copia de objetos para copiar automáticamente los atributos de un objeto sin realizar cambios en la asignación. Por ejemplo, si los datos de origen tienen una estructura de:

address{
        line1: 4191 Ridgebrook Way,
        city: San Jose,
        state: California
        }

y una estructura XDM de:

addr{
    addrLine1: 4191 Ridgebrook Way,
    city: San Jose,
    state: California
    }

A continuación, la asignación pasa a ser:

address -> addr
address.line1 -> addr.addrLine1

En el ejemplo anterior, la variable city y state Los atributos de también se incorporan automáticamente durante la ejecución porque la variable address objeto asignado a addr. Si tuviera que crear una line2 en la estructura XDM y los datos de entrada también contienen un atributo line2 en el address , también se incorporará automáticamente sin necesidad de modificar manualmente la asignación.

Para garantizar que la asignación automática funcione, se deben cumplir los siguientes requisitos previos:

  • Los objetos de nivel principal deben asignarse;
  • Se deben haber creado nuevos atributos en el esquema XDM;
  • Los nuevos atributos deben tener nombres coincidentes en el esquema de origen y en el esquema XDM.

Si no se cumplen todos los requisitos previos, debe asignar manualmente el esquema de origen al esquema XDM mediante la preparación de datos.

Apéndice

A continuación se proporciona información adicional sobre el uso de funciones de asignación de preparación de datos

Caracteres especiales special-characters

La siguiente tabla describe una lista de caracteres reservados y sus caracteres codificados correspondientes.

Carácter reservado
Carácter codificado
espacio
%20
!
%21
"
%22
#
%23
$
%24
%
%25
&
%26
'
%27
(
%28
)
%29
*
%2A
+
%2B
,
%2C
/
%2F
:
%3A
;
%3B
<
%3C
=
%3D
>
%3E
?
%3F
@
%40
[
%5B
]
%5D
^
%5E
`
%60
~
%7E

Valores de campo de dispositivo device-field-values

La tabla siguiente describe una lista de valores de campos de dispositivo y sus descripciones correspondientes.

Device
Descripción
Escritorio
Un tipo de dispositivo de escritorio o portátil.
Anonimizado
Un dispositivo anónimo. En algunos casos, estos son useragents que han sido alterados por un software de anonimización.
Desconocido
Un dispositivo desconocido. Estos suelen ser useragents que no contienen información sobre el dispositivo.
Dispositivo móvil
Dispositivo móvil que aún no se ha identificado. Este dispositivo móvil puede ser un eReader, una tableta, un teléfono, un reloj, etc.
Tableta
Un dispositivo móvil con una pantalla grande (normalmente > 7").
Teléfono
Un dispositivo móvil con una pantalla pequeña (normalmente < 7").
Ver
Un dispositivo móvil con una pantalla pequeña (normalmente < 2"). Estos dispositivos funcionan normalmente como una pantalla adicional para un dispositivo de tipo teléfono/tableta.
Realidad aumentada
Un dispositivo móvil con capacidades de AR.
Realidad virtual
Un dispositivo móvil con capacidades de RV.
eReader
Un dispositivo similar a una tableta, pero normalmente con un eInk pantalla.
Cuadro en la parte superior
Dispositivo conectado que permite la interacción a través de una pantalla de tamaño TV.
TV
Dispositivo similar al decodificador, pero integrado en el televisor.
Dispositivo doméstico
Un electrodoméstico (generalmente grande), como un refrigerador.
Consola de juego
Un sistema de juego fijo como un Playstation o un XBox.
Consola de juego portátil
Un sistema de juegos móvil como Nintendo Switch.
Voz
Un dispositivo accionado por voz como un Amazon Alexa o una Google Home.
Coche
Un explorador basado en vehículo.
Robot
Robots que visitan un sitio web.
Robot móvil
Robots que visitan un sitio web pero que indican que desean que se les considere visitantes móviles.
Robot Imitator
Robots que visitan un sitio web, fingiendo que son robots como Google, pero no lo son. Nota: En la mayoría de los casos, los imitadores de robots son robots.
Nube
Una aplicación basada en la nube. Estos no son ni robots ni hackers, sino aplicaciones que necesitan conectarse. Esto incluye Mastodon servidores.
Pirata Informático
Este valor de dispositivo se utiliza en caso de que se detecten scripts en la useragent cadena.

Ejemplos de código code-samples

map_get_values map-get-values

Seleccione para ver el ejemplo
code language-json
 example = "map_get_values(book_details,\"author\") where input is : {\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "    }\n" +
        "}",
      result = "{\"author\": \"George R. R. Martin\"}"

map_has_keys map_has_keys

Seleccione para ver el ejemplo
code language-json
 example = "map_has_keys(book_details,\"author\")where input is : {\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "    }\n" +
        "}",
      result = "true"

add_to_map add_to_map

Seleccione para ver el ejemplo
code language-json
example = "add_to_map(book_details, book_details2) where input is {\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "    }\n" +
        "}" +
        "{\n" +
        "    \"book_details2\":\n" +
        "    {\n" +
        "        \"author\": \"Neil Gaiman\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-0-380-97365-0\"\n" +
        "        \"publisher\": \"William Morrow\"\n" +
        "    }\n" +
        "}",
      result = "{\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "        \"publisher\": \"William Morrow\"\n" +
        "    }\n" +
        "}",
      returns = "A new map with all elements from map and addends"

object_to_map object_to_map

Sintaxis 1

Seleccione para ver el ejemplo
code language-json
example = "object_to_map(\"firstName\", \"John\", \"lastName\", \"Doe\")",
result = "{\"firstName\" : \"John\", \"lastName\": \"Doe\"}"

Sintaxis 2

Seleccione para ver el ejemplo
code language-json
example = "object_to_map(address) where input is " +
  "address: {line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}",
result = "{line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}"

Sintaxis 3

Seleccione para ver el ejemplo
code language-json
example = "object_to_map(addresses,type)" +
        "\n" +
        "[\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City\": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"home\"\n" +
        "    },\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"work\"\n" +
        "    },\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"office\"\n" +
        "    }\n" +
        "]" ,
result = "{\n" +
        "    \"home\":\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City\": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"home\"\n" +
        "    },\n" +
        "    \"work\":\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"work\"\n" +
        "    },\n" +
        "    \"office\":\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"office\"\n" +
        "    }\n" +
        "}"

array_to_map array_to_map

Seleccione para ver el ejemplo
code language-json
example = "array_to_map(addresses, \"type\") where addresses is\n" +
  "\n" +
  "[\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City\": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"home\"\n" +
  "    },\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"work\"\n" +
  "    },\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"office\"\n" +
  "    }\n" +
  "]" ,
result = "{\n" +
  "    \"home\":\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City\": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"home\"\n" +
  "    },\n" +
  "    \"work\":\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"work\"\n" +
  "    },\n" +
  "    \"office\":\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"office\"\n" +
  "    }\n" +
  "}",
returns = "Returns a map with given field name and value pairs or null if input is null"
recommendation-more-help
461cc884-c234-4a0c-ac75-6efbaafc1394