Editar expresiones expression

La edición de una expresión implica la introducción manual de condiciones para formar una regla. Este modo le permite utilizar funciones avanzadas, que le permiten manipular los valores utilizados para llevar a cabo consultas específicas, como la manipulación de fechas, cadenas, campos numéricos, ordenación, etc.

IMPORTANT
La sección siguiente proporciona información sobre cómo trabajar con el editor de expresiones para generar reglas. Tenga en cuenta que la sintaxis utilizada para generar reglas difiere de la utilizada para agregar personalización.

Trabajo con el editor de expresiones edit

El editor de expresiones está disponible en el botón del modelador de consultas Editar expresión, disponible para los campos Atributo y Valor al configurar una condición personalizada.

Acceso desde el campo Atributo
Acceso desde el campo Value
{modal="regular"}
{modal="regular"}

El editor de expresiones proporciona lo siguiente:

  • Un campo de entrada (1) en el que se define la expresión.
  • La lista de campos (2) disponibles que se pueden usar en la expresión y que corresponden a la dimensión de segmentación de la consulta.
  • Funciones de ayuda (3), ordenadas por categoría.

Edite la expresión introduciendo una expresión directamente en el campo de entrada. Para añadir un campo o una función de ayuda, coloque el cursor en la expresión donde desee añadirla y haga clic en el botón +.

{modal="regular"}

Cuando la expresión esté lista, haga clic en el botón Confirmar. La expresión se muestra en el campo seleccionado. Para editarlo, abra el editor de expresiones y realice los cambios deseados.

El ejemplo siguiente muestra una expresión configurada para el campo Value. Para editarlo, debe abrir el editor de expresiones con el botón Editar expresión.

{modal="regular"}

Funciones de ayuda

La herramienta de edición de consultas le permite utilizar funciones avanzadas para realizar filtros complejos según los resultados deseados y los tipos de datos manipulados. Estas son las funciones disponibles:

Agregado

Las funciones agregadas se utilizan para realizar cálculos en un conjunto de valores.

Nombre
Descripción
Syntax
Avg
Devuelve el promedio de una columna de tipo numérico
Avg(<value>)
Recuento
Cuenta los valores no nulos de una columna
Count(<value>)
CountAll
Cuenta los valores devueltos (todos los campos)
CountAll()
Countdistinct
Cuenta los distintos valores no nulos de una columna
Countdistinct(<value>)
Max
Devuelve el valor máximo de una columna numérica, cadena o tipo de fecha
Max(<value>)
Min
Devuelve el valor mínimo de un número, una cadena o una columna de tipo de fecha
Min(<value>)
StdDev
Devuelve la desviación estándar de una columna de número, cadena o fecha.
StdDev(<value>)
StringAgg
Devuelve la concatenación de los valores de una columna de tipo cadena, separados por el carácter del segundo argumento
StringAgg(<Valor>, <Cadena>)
Sum
Devuelve la suma de los valores de una columna de número, cadena o fecha.
Sum(<value>)

Fecha

Las funciones de fecha se utilizan para manipular los valores de fecha y hora.

Nombre
Descripción
Syntax
AddDays
Agrega un número de días a una fecha
AddDays(<fecha>, <número>)
AddHours
Agrega un número de horas a una fecha
AddHours(<fecha>, <número>)
AddMinutes
Añade un número de minutos a una fecha
AddMinutes(<fecha>, <número>)
AddMonths
Añade un número de meses a una fecha
AddMonths(<fecha>, <número>)
AddSeconds
Añade un número de segundos a una fecha
AddSeconds(<fecha>, <número>)
AddYears
Agrega un número de años a una fecha
AddYears(<fecha>, <número>)
ConvertNTZ
Convierte la marca de tiempo NTZ (marca de tiempo sin zona horaria) en TZ (marca de tiempo con zona horaria) aplicando la sesión definida TZ
ConvertNTZ (<fecha+hora>)
DateCmp
Comparar dos fechas
DateCmp(<fecha>,<fecha>)
DateOnly
Devuelve solo la fecha (con hora 00:00)*
DateOnly(<date>)
Day
Devuelve el número que representa el día de la fecha.
Day(<fecha>)
DayOfYear
Devuelve el número de día del año de la fecha
DayOfYear(<date>)
DaysAgo
Devuelve la fecha correspondiente a la fecha actual menos “n” días
DaysAgo(<number>)
DaysAgoInt
Devuelve la fecha (entero aaaammdd) correspondiente a la fecha actual menos “n” días
DaysAgoInt(<number>)
DaysDiff
Número de días entre dos fechas
DaysDiff(<fecha de finalización>, <fecha de inicio>)
DaysOld
Devuelve la edad en días de una fecha
DaysOld(<fecha>)
GetDate
Devuelve la fecha del sistema actual del servidor
GetDate()
Hour
Devuelve la hora de la fecha
Hour(<fecha>)
HoursDiff
Devuelve el número de horas entre dos fechas
HoursDiff(<end date>, <start date>)
Minute
Devuelve los minutos de la fecha
Minute(<fecha>)
MinutesDiff
Devuelve el número de minutos entre dos fechas
MinutesDiff(<fecha de finalización>, <fecha de inicio>)
Month
Devuelve el número que representa el mes de la fecha
Month(<fecha>)
MonthsAgo
Devuelve la fecha correspondiente a la fecha actual menos n meses
MonthsAgo(<número>)
MonthsDiff
Devuelve el número de meses entre dos fechas
MonthsDiff(<fecha de finalización>, <fecha de inicio>)
MonthsOld
Devuelve la edad en meses de una fecha
MonthsOld(<fecha>)
Oldest
Devuelve la fecha más antigua de un intervalo
Más antiguo (<fecha, fecha>)
Second
Devuelve los segundos de la fecha
Second(<date>)
SecondsDiff
Devuelve el número de segundos entre dos fechas
SecondsDiff(<fecha de finalización>, <fecha de inicio>)
SubDays
Resta un número de días a partir de una fecha
SubDays(<fecha>, <número>)
SubHours
Resta un número de horas a partir de una fecha
SubHours(<fecha>, <número>)
SubMinutes
Resta un número de minutos desde una fecha
SubMinutes(<fecha>, <número>)
SubMonths
Resta un número de meses desde una fecha
SubMonths(<fecha>, <número>)
SubSeconds
Resta un número de segundos desde una fecha
SubSeconds(<fecha>, <número>)
SubYears
Resta un número de años a partir de una fecha
SubYears(<fecha>, <número>)
ToDate
Convierte una fecha y hora como fecha
ToDate(<fecha + hora>)
ToDateTime
Convierte una cadena en una fecha + hora.
ToDateTime(<cadena>)
ToTimestamp
Convierte una cadena en una marca de tiempo
ToTimestamp(<cadena>)
ToTimeZone
Convertir una fecha y hora a la zona horaria
ToTimeZone(<fecha>,<zona horaria>)
TruncDate
Redondea una fecha y hora hacia el segundo más cercano
TruncDate(@lastModified, <número de segundos>)
TruncDateTZ
Redondea una fecha y hora con una precisión determinada expresada en segundos
TruncDateTZ(<fecha>, <número de segundos>, <zona horaria>)
TruncQuarter
Redondea una fecha al trimestre
TruncQuarter(<fecha>)
TruncTime
Redondea la parte de tiempo hasta el segundo más cercano
TruncTim(e<date>, <number of seconds>)
TruncWeek
Redondea una fecha a la semana
TruncWeek(<fecha>)
TruncYear
Redondea una fecha y hora al 1 de enero del año
TruncYear(<fecha>)
WeekDay
Devuelve un número que representa el día de la semana de la fecha (0=lunes, 6=domingo)
WeekDay(<fecha>)
Year
Devuelve el número que representa el año de la fecha
Year(<fecha>)
YearAndMonth
Devuelve el número que representa el año y el mes de la fecha
YearAndMonth(<fecha>)
Hace años
Devuelve el número de años entre una fecha determinada y la fecha actual
YearsAgo(<fecha>)
YearsDiff
Devuelve el número de años entre las dos fechas
YearsDiff(<fecha de finalización>, <fecha de inicio>)
YearsOld
Devuelve la edad en años de una fecha
YearsOld(<date>)
NOTE
Tenga en cuenta que la función Dateonly tiene en cuenta la zona horaria del servidor, no la del operador.

Geomarketing

Las funciones de geomarketing se utilizan para manipular los valores geográficos.

Nombre
Descripción
Syntax
Distance
Devuelve la distancia entre dos puntos definidos por su longitud y latitud, expresada en grados
Distance(<Longitude A>, <Latitude A>, <Longitude B>, <Latitude B>)

Numérico

Las funciones numéricas se utilizan para convertir texto en números.

Nombre
Descripción
Syntax
Abs
Devuelve el valor absoluto de un número
Abs(<número>)
Ceil
Devuelve el menor entero que sea mayor o igual que un número
Ceil(<número>)
Floor
Devuelve el mayor entero que sea mayor o igual que un número
Floor(<number>)
Greatest
Devuelve el número mayor de dos números
Greatest(<número 1>, <número 2>)
Least
Devuelve el número menor de dos números
Least(<número 1>, <número 2>)
Mod
Devuelve el resto de la división del entero “n1” entre “n2”
Mod(<number 1>, <number 2>)
Percent
Devuelve la proporción de dos números expresado como un porcentaje
Percent(<número 1>, <número 2>)
Aleatorio
Devuelve un valor aleatorio
Aleatorio()
Round
Redondea un número a “n” decimales
Redondeo(<número>, <número de decimales>)
Sign
Devuelve el signo del número
Sign(<número>)
ToDouble
Convierte un entero en flotante
ToDouble(<número>)
ToInt64
Convierte un flotante en un entero de 64 bits
ToInt64(<número>)
ToInteger
Convierte un flotante en un entero
ToInteger(<número>)
Trunc
Trunca decimales de “n1” a “n2”
Trunc(<n1>, <n2>)

Otros

Esta tabla contiene las funciones restantes disponibles.

Nombre
Descripción
Syntax
AESEncrypt
Cifrar la cadena proporcionada en el argumento
AESEncrypt(<valor>)
Case
Devuelve el valor 1 si la condición es verdadera. Si no es así, devuelve el valor 2.
Case(When(<condition>, <value 1>), Else(<value 2>))
ClearBit
Elimina el indicador del valor
ClearBit(<identificador>, <indicador>)
Coalesce
Devuelve el valor 2 si el valor 1 es cero o nulo, de lo contrario devuelve el valor 1
Coalesce(<valor 1>, <valor 2>)
Decode
Devuelve el valor 3 si el valor 1 = valor 2. Si no devuelve el valor 4.
Decode(<value 1>, <value 2>, <value 3>, <value 4>)
Else
Devuelve el valor 1 (solo puede utilizarse como parámetro de la función case)
Else(<value 1>, <value 2>)
GetEmailDomain
Extrae el dominio de una dirección de correo electrónico
GetEmailDomain(<valor>)
GetMirrorURL
Recupera la URL del servidor de la página espejo
GetMirrorURL(<valor>)
Iif
Devuelve el valor 1 si la expresión es verdadera. Si no es así, devuelve el valor 2
Iif(<condition>, <value 1>, <value 2>)
IsBitSet
Indica si el indicador se encuentra en el valor
IsBitSet(<identificador>, <indicador>)
IsEmptyString
Devuelve el valor 2 si la cadena 1 está vacía; en caso contrario, devuelve el valor 3
IsEmptyString(<value 1>, <value 2>, <value 3>)
NuevoUUID
Devuelve un identificador único
NewUUID()
NoNull
Devuelve la cadena vacía si el argumento es NULL
NoNull(<valor>)
RowId
Devuelve el número de línea
RowId
SetBit
Fuerza la marca en el valor
SetBit(<identificador>, <indicador>)
ToBoolean
Convierte un número en Boolean
ToBoolean(<número>)
When
Devuelve el valor 1 si la expresión es verdadera. Si no es así, devuelve el valor 2 (solo puede utilizarse como parámetro de la función case)
When(<condition>, <value 1>)

Cadena

Las funciones de cadena se utilizan para manipular un conjunto de cadenas.

Nombre
Descripción
Syntax
AllNonNull2
Indica si todos los parámetros no son nulos y no están vacíos.
AllNonNull2(<string>, <string>)
AllNonNull3
Indica si todos los parámetros no son nulos y no están vacíos.
AllNonNull3(<string>, <string>, <string>)
Ascii
Devuelve el valor ASCII del primer carácter de la cadena.
Ascii(<string>)
Char
Devuelve el carácter correspondiente al código ASCII “n”.
Char(<number>)
Charindex
Devuelve la posición de la cadena 2 en la cadena 1.
Charindex(<string>, <string>)
dataLength
Devuelve el tamaño en bytes de la cadena
dataLength(<string>)
GetLine
Muestra la línea nth (de 1 a n) de la cadena.
GetLine(<string>)
IfEquals
Devuelve el tercer parámetro si los dos primeros parámetros son iguales. Si no es así, devuelve el último parámetro
IfEquals(<string>, <string>, <string>, <string>)
IsMemoNull
Indica si la nota transferida como parámetro es nula
IsMemoNull(<memo>)
JuxtWords
Concatena las cadenas transferidas como parámetros. Añade espacios entre las cadenas si es necesario.
JuxtWords(<string>, <string>)
JuxtWords3
Concatena las cadenas transferidas como parámetros. Añade espacios entre las cadenas si es necesario
JuxtWords3(<string>, <string>, <string>)
Left
Devuelve los primeros “n” caracteres de la cadena
Left(<string>, <number>)
Length
Devuelve la longitud de la cadena
Length(<string>)
Línea
Extraer línea n de la cadena
Line(<string>,<number>)
Lower
Devuelve la cadena en minúscula
Lower(<cadena>)
LPad
Devuelve la cadena completa a la izquierda
LPad (<Cadena>, <Número>, <Carácter>)
Ltrim
Elimina los espacios a la izquierda de la cadena
Ltrim(<string>)
Md5Digest
Devuelve una representación hexadecimal de la clave MD5 de una cadena
Md5Digest(<string>)
MemoContains
Especifica si la nota contiene la cadena transferida como parámetro
MemoContains(<memo>, <cadena>)
ValorNodo
Extrae el valor de un campo XML de su XPath y de los datos de campo
NodeValue (<String>, <String>)
Replace
Reemplaza todas las apariciones de un valor de cadena especificado por otro valor de cadena.
Replace(<cadena>,<cadena>,<cadena>)
Right
Devuelve los últimos “n” caracteres de la cadena
Right(<cadena>)
RPad
Devuelve la cadena completa a la derecha
RPad(<cadena>, <número>, <carácter>)
Rtrim
Elimina los espacios a la derecha de la cadena
Rtrim(<cadena>)
Sha256Digest
Representación hexadecimal de la clave SHA256 de una cadena.
Sha256Digest (<cadena>)
Sha512Digest
Representación hexadecimal de la clave SHA512 de una cadena.
Sha512Digest (<cadena>)
Smart
Devuelve la cadena con la primera letra de cada palabra en mayúscula
Smart(<cadena>)
Substring
Extrae la subcadena que comienza en el carácter “n1” de la cadena y de longitud “n2”
Substring(<string>, <offset>, <length>)
ToString
Convierte el número en una cadena
ToString(<number>, <number>)
Upper
Devuelve la cadena en mayúsculas
Upper(<cadena>)
VirtualLink
Devuelve la clave externa de un vínculo transferido como parámetro si los otros dos parámetros son iguales
VirtualLink(<número>, <número>, <número>)
VirtualLinkStr
Devuelve la clave externa (texto) de un enlace transferido como parámetro si los otros dos parámetros son iguales
VirtualLinkStr(<cadena>, <número>, <número>)

Ventana

Nombre
Descripción
Syntax
_Over__
Ejecute la llamada a la función SQL introducida como primer parámetro, sobre Partición u Ordenar por los campos introducidos como segundo parámetro
_Over_ (<Valor>, <Valor>)
Desc
Aplica un orden descendente
Desc(<valor 1>)
OrderBy
Ordena el resultado dentro de la partición
OrderBy(<valor 1>)
PartitionBy
Particiona el resultado de una consulta en una tabla
PartitionBy(<valor 1>)
RowNum
Genera un número de línea basado en la partición de tabla y en una secuencia de ordenación.
RowNum(PartitionBy(<value 1>), OrderBy(<value 1>))
recommendation-more-help
c39c2d00-ba9a-424b-adf9-66af58a0c34b