Editar expressões edit-expressions

NOTE
A seção abaixo fornece informações sobre como trabalhar com o editor de expressão para criar regras. Lembre-se de que a sintaxe usada para criar regras é diferente da usada para adicionar personalização.

Trabalhar com o editor de expressão edit

A edição de uma expressão envolve a inserção manual de condições para formar uma regra. Este modo permite usar funções avançadas, que, por sua vez, permitem manipular os valores usados para realizar consultas específicas, como manipular datas, strings, campos numéricos e ordenação.

O editor de expressão está disponível por meio do botão Editar expressão do construtor de regras, disponível para os campos Atributo e Valor ao configurar uma condição personalizada.

Acesso a partir do campo Atributo
Acesso a partir do campo Valor
Editor de expressão para o campo “Atributo” {modal="regular"}
Editor de expressão para o campo “Valor” {modal="regular"}

O editor de expressão fornece:

  • Um campo de entrada (1) no qual a expressão é definida.
  • Uma lista de campos (2) disponíveis que podem ser usados na expressão e correspondem à dimensão de direcionamento da consulta.
  • Funções auxiliares (3), ordenadas por categoria.

Para editar a expressão, insira uma expressão diretamente no campo de entrada. Para adicionar um campo ou uma função auxiliar, coloque o cursor na expressão à qual deseja adicionar o campo e clique no botão +.

Interface do editor de expressão {modal="regular"}

Funções de ajuda

A ferramenta de edição de consultas permite usar funções avançadas para fazer filtragens complexas, dependendo dos resultados desejados e dos tipos de dados manipulados. Os recursos abaixo estão disponíveis.

Agregado

As funções de agregado efetuam cálculos para um conjunto de valores.

Nome
Descrição
Sintaxe
Avg
Retorna a média de uma coluna do tipo número
Avg(<valor>)
Count
Conta os valores não nulos de uma coluna
Count(<valor>)
CountAll
Conta os valores retornados (todos os campos)
CountAll()
Countdistinct
Conta os valores não nulos distintos de uma coluna
Countdistinct(<valor>)
Max
Retorna o valor máximo de uma coluna do tipo número, string ou data
Max(<valor>)
Min
Retorna o valor mínimo de uma coluna do tipo número, string ou data
Min(<valor>)
StdDev
Retorna o desvio padrão de uma coluna do tipo número, string ou data
StdDev(<valor>)
StringAgg
Retorna a concatenação dos valores de uma coluna do tipo string, separados pelo caractere no segundo argumento
StringAgg(<valor>, <string>)
Sum
Retorna a soma dos valores de uma coluna do tipo número, string ou data
Sum(<valor>)

Data

As funções de data manipulam valores de data ou hora.

Nome
Descrição
Sintaxe
AddDays
Adiciona um número de dias a uma data
AddDays(<data>, <número>)
AddHours
Adiciona um número de horas a uma data
AddHours(<data>, <número>)
AddMinutes
Adiciona um número de minutos a uma data
AddMinutes(<data>, <número>)
AddMonths
Adiciona um número de meses a uma data
AddMonths(<data>, <número>)
AddSeconds
Adiciona um número de segundos a uma data
AddSeconds(<data>, <número>)
AddYears
Adiciona um número de anos a uma data
AddYears(<data>, <número>)
ConvertNTZ
Converte o carimbo de data/hora NTZ (carimbo de data/hora sem fuso horário) em TZ (carimbo de data/hora com fuso horário), usando o fuso horário definido da sessão
ConvertNTZ(<data+hora>)
DateCmp
Compara duas datas
DateCmp(<data>, <data>)
DateOnly
Retorna somente a data (com a hora em 00:00)
DateOnly(<data>)
Day
Retorna o número que representa o dia da data
Day(<data>)
DayOfYear
Retorna o número do dia no ano da data
DayOfYear(<data>)
DaysAgo
Retorna a data correspondente à data atual menos n dias
DaysAgo(<número>)
DaysAgoInt
Retorna a data (número inteiro aaaammdd) correspondente à data atual menos n dias
DaysAgoInt(<número>)
DaysDiff
Retorna o número de dias entre duas datas
DaysDiff(<data final>, <data inicial>)
DaysOld
Retorna a idade em dias de uma data
DaysOld(<data>)
GetDate
Retorna a data atual do sistema do servidor
GetDate()
Hour
Retorna a hora da data
Hour(<data>)
HoursDiff
Retorna o número de horas entre duas datas
HoursDiff(<data final>, <data inicial>)
Minute
Retorna os minutos da data
Minute(<data>)
MinutesDiff
Retorna o número de minutos entre duas datas
MinutesDiff(<data final>, <data inicial>)
Month
Retorna o número que representa o mês da data
Month(<data>)
MonthsAgo
Retorna a data correspondente à data atual menos n meses
MonthsAgo(<número>)
MonthsDiff
Retorna o número de meses entre duas datas
MonthsDiff(<data final>, <data inicial>)
MonthsOld
Retorna a idade em meses de uma data
MonthsOld(<data>)
Mais antiga
Retorna a data mais antiga em um intervalo
Oldest(<data, data>)
Second
Retorna os segundos da data
Second(<data>)
SecondsDiff
Retorna o número de segundos entre duas datas
SecondsDiff(<data final>, <data inicial>)
SubDays
Subtrai um número de dias de uma data
SubDays(<data>, <número>)
SubHours
Subtrai um número de horas de uma data
SubHours(<data>, <número>)
SubMinutes
Subtrai um número de minutos de uma data
SubMinutes(<data>, <número>)
SubMonths
Subtrai um número de meses de uma data
SubMonths(<data>, <número>)
SubSeconds
Subtrai um número de segundos de uma data
SubSeconds(<data>, <número>)
SubYears
Subtrai um número de anos de uma data
SubYears(<data>, <número>)
ToDate
Converte uma data + hora em uma data
ToDate(<data + hora>)
ToDateTime
Converte uma string em uma data + hora
ToDateTime(<string>)
ToTimestamp
Converte uma string em um carimbo de data e hora
ToTimestamp(<string>)
ToTimeZone
Converte uma data + hora em um fuso horário
ToTimeZone(<data>, <fuso horário>)
TruncDate
Arredonda uma data + hora para o segundo mais próximo
TruncDate(@lastModified, <número de segundos>)
TruncDateTZ
Arredonda uma data + hora com uma determinada precisão expressa em segundos
TruncDateTZ(<data>, <número de segundos>, <fuso horário>)
TruncQuarter
Arredonda uma data para o trimestre
TruncQuarter(<data>)
TruncTime
Arredonda a parte da hora para o próximo segundo
TruncTime(<data>, <número de segundos>)
TruncWeek
Arredonda uma data para a semana
TruncWeek(<data>)
TruncYear
Arredonda uma data + hora para 1.º de janeiro do ano
TruncYear(<data>)
WeekDay
Retorna o número que representa o dia da semana correspondente à data (0 = segunda-feira, 6 = domingo)
WeekDay(<data>)
Year
Retorna o número que representa o ano da data
Year(<data>)
YearAndMonth
Retorna o número que representa o ano e o mês da data
YearAndMonth(<data>)
YearsAgo
Retorna o número de anos entre uma determinada data e a data atual
YearsAgo(<data>)
YearsDiff
Retorna o número de anos entre duas datas
YearsDiff(<data final>, <data inicial>)
YearsOld
Retorna a idade em anos de uma data
YearsOld(<data>)
NOTE
Observe que a função DateOnly considera o fuso horário do servidor, não o do operador.

Geomarketing

As funções de geomarketing são usadas para manipular valores geográficos.

Nome
Descrição
Sintaxe
Distance
Retorna a distância entre dois pontos definidos por sua longitude e latitude, expresso em graus.
Distance(<Longitude A>, <Latitude A>, <Longitude B>, <Latitude B>)

Numérico

As funções numéricas são usadas para converter textos em números.

Nome
Descrição
Sintaxe
Abs
Retorna o valor absoluto de um número
Abs(<número>)
Ceil
Retorna o número inteiro mais baixo maior ou igual a um número
Ceil(<número>)
Floor
Retorna o maior inteiro maior ou igual a um número
Floor(<número>)
Greatest
Retorna o maior número de dois números
Greatest(<número 1>, <número 2>)
Least
Retorna o menor de dois números
Least(<número 1>, <número 2>)
Mod
Retorna o restante da divisão inteira de n1 por n2
Mod(<número 1>, <número 2>)
Percent
Retorna a proporção de dois números expressos como uma porcentagem
Percent(<número 1>, <número 2>)
Random
Retorna o valor aleatório
Random()
Round
Arredonda um número para n decimais
Round(<número>, <número de decimais>)
Sign
Retorna o sinal do número
Sign(<número>)
ToDouble
Converte um inteiro em um flutuante
ToDouble(<número>)
ToInt64
Converte um flutuante em um inteiro de 64 bits
ToInt64(<número>)
ToInteger
Converte um flutuante em um inteiro
ToInteger(<número>)
Trunc
Corta o n1 para que tenha n2 casas decimais
Trunc(<n1>, <n2>)

Outros

Esta tabela contém as demais funções disponíveis.

Nome
Descrição
Sintaxe
AESEncrypt
String de criptografia fornecida no argumento
AESEncrypt(<valor>)
Case
Retorna o valor 1 se a condição for verdadeira. Caso contrário, retornará o valor 2.
Case(When(<condição>, <valor 1>), Else(<valor 2>))
ClearBit
Exclui o Sinalizador no valor
ClearBit(<identificador>, <sinalizador>)
Coalesce
Retorna o valor 2 se o valor 1 for zero ou nulo, caso contrário retorna o valor 1
Coalesce(<valor 1>, <valor 2>)
Decode
Retorna o valor 3 se o valor 1 for igual ao valor 2. Caso contrário, retorna o valor 4.
Decode(<valor 1>, <valor 2>, <valor 3>, <valor 4>)
Else
Retorna o valor 1 (só pode ser usado como parâmetro da função case)
Else(<valor 1>, <valor 2>)
GetEmailDomain
Extrai o domínio de um endereço de email
GetEmailDomain(<valor>)
GetMirrorURL
Recupera o URL do servidor da mirror page
GetMirrorURL(<valor>)
Iif
Retorna o valor 1 se a expressão for verdadeira. Caso contrário, retorna o valor 2
Iif(<condição>, <valor 1>, <valor 2>)
IsBitSet
Indica se o Sinalizador está no valor
IsBitSet(<identificador>, <sinalizador>)
IsEmptyString
Retorna o valor 2 se a string 1 estiver vazia, caso contrário, retorna o valor 3.
IsEmptyString(<valor 1>, <valor 2>, <valor 3>)
NewUUID
Retorna um identificador exclusivo
NewUUID()
NoNull
Retorna a string vazia se o argumento for NULL.
NoNull(<valor>)
RowId
Retorna o número da linha.
RowId
SetBit
Força o Sinalizador no valor.
SetBit(<identificador>, <sinalizador>)
ToBoolean
Converte um número em um booleano
ToBoolean(<número>)
When
Retorna o valor 1 se a expressão for verdadeira. Se não, ele retorna o valor 2 (só pode ser usado como parâmetro da função case)
When(<condição>, <valor 1>)

String

As funções de string são usadas para manipular um conjunto de strings.

Nome
Descrição
Sintaxe
AllNonNull2
Indica se todos os parâmetros são não nulos e não estão vazios
AllNonNull2(<string>, <string>)
AllNonNull3
Indica se todos os parâmetros são não nulos e não estão vazios
AllNonNull3(<string>, <string>, <string>)
Ascii
Retorna o valor ASCII do primeiro caractere na string.
Ascii(<string>)
Char
Retorna o caractere correspondente ao código ASCII 'n'
Char(<número>)
Charindex
Retorna a posição da string 2 na string 1.
Charindex(<string>, <string>)
dataLength
Retorna o tamanho da string em bytes
dataLength(<string>)
GetLine
Retorna a enésima linha (de 1 a n) da string
GetLine(<string>)
IfEquals
Retorna o terceiro parâmetro se os dois primeiros parâmetros forem iguais. Caso contrário, retorna o último parâmetro
IfEquals(<string>, <string>, <string>, <string>)
IsMemoNull
Indica se o memo passado como parâmetro é nulo
IsMemoNull(<memo>)
JuxtWords
Concatena as strings transmitidas como parâmetros. Adiciona espaços entre as strings, se necessário.
JuxtWords(<string>, <string>)
JuxtWords3
Concatena as strings transmitidas como parâmetros. Adiciona espaços entre as strings, se necessário
JuxtWords3(<string>, <string>, <string>)
Left
Retorna os primeiros n caracteres da string
Left(<string>, <número>)
Length
Retorna o comprimento da string
Length(<string>)
Linha
Extrair linha n da string
Line(<string>,<número>)
Lower
Retorna a string em minúsculas
Lower(<string>)
LPad
Retorna a string concluída à esquerda
LPad (<string>, <número>, <caractere>)
Ltrim
Remove espaços à esquerda da string
Ltrim(<string>)
Md5Digest
Retorna uma representação hexadecimal da chave MD5 de uma string
Md5Digest(<string>)
MemoContains
Especifica se o memo contém a string aprovada como um parâmetro
MemoContains(<memo>, <string>)
NodeValue
Extrai o valor de um campo XML de seu XPath e dos dados do campo
NodeValue (<string>, <string>)
Replace
Substitui todas as ocorrências do valor de uma string especificada pelo valor de outra string.
Replace(<string>,<string>,<string>)
Right
Retorna os últimos n caracteres da string
Right(<string>)
RPad
Retorna a string concluída à direita
RPad(<string>, <número>, <caractere>)
Rtrim
Remove espaços à direita da string
Rtrim(<string>)
Sha256Digest
Representação hexadecimal da chave SHA256 de uma string.
Sha256Digest (<string>)
Sha512Digest
Representação hexadecimal da chave SHA512 de uma string.
Sha512Digest (<string>)
Smart
Retorna a string com a primeira letra de cada palavra em maiúsculas
Smart(<string>)
Substring
Extrai a substring iniciando no caractere n1 da string e com n2 de comprimento
Substring(<string>, <deslocamento>, <comprimento>)
ToString
Converte o número em uma string
ToString(<número>, <número>)
Upper
Retorna a string em maiúsculas
Upper(<string>)
VirtualLink
Retorna a chave externa de um link passado como um parâmetro se os outros dois parâmetros forem iguais
VirtualLink(<número>, <número>, <número>)
VirtualLinkStr
Retorna a chave externa (texto) de um link passado como um parâmetro se os outros dois parâmetros forem iguais
VirtualLinkStr(<string>, <número>, <número>)

Janela

Nome
Descrição
Sintaxe
_Over__
Execute a chamada da função SQL inserida como primeiro parâmetro, em “Partição” ou “Ordenar por” dos campos inseridos como segundo parâmetro
_Over_ (<valor>, <valor>)
Desc
Aplica uma classificação decrescente
Desc(<valor 1>)
OrderBy
Classifica o resultado dentro da partição
OrderBy(<valor 1>)
PartitionBy
Partições do resultado de um consulta em uma tabela
PartitionBy(<valor 1>)
RowNum
Gera um número de linha com base na partição da tabela e em uma sequência de classificação.
RowNum(PartitionBy(<valor 1>), OrderBy(<valor 1>))
recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76