Editar expressões expression

A edição de uma expressão envolve a inserção manual de condições para formar uma regra. Esse modo permite usar funções avançadas, que permitem manipular os valores usados para realizar consultas específicas, como manipular datas, cadeias de caracteres, campos numéricos, classificação etc.

IMPORTANT
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

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

Acesso pelo campo Atributo
Acesso do campo Value
{modal="regular"}
{modal="regular"}

O editor de expressão fornece:

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

Edite a expressão inserindo uma expressão diretamente no campo de entrada. Para adicionar um campo ou uma função auxiliar, coloque o cursor na expressão em que deseja adicioná-lo e clique no botão +.

{modal="regular"}

Quando a expressão estiver pronta, clique no botão Confirmar. A expressão é exibida no campo selecionado. Para editá-lo, abra o editor de expressão e faça as alterações desejadas.

O exemplo abaixo mostra uma expressão configurada para o campo Value. Para editá-lo, é necessário abrir o editor de expressão usando o botão Editar expressão.

{modal="regular"}

Funções de ajuda

A ferramenta de edição de query 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 agregação são usadas para realizar cálculos em um conjunto de valores.

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

Data

As funções de data são usadas para manipular 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) aplicando a sessão definida TZ
ConvertNTZ (<date+time>)
DateCmp
Comparar duas datas
DateCmp(<data>,<data>)
DateOnly
Retorna somente a data (com a hora 00:00)*
DateOnly(<date>)
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(<date>)
DaysAgo
Retorna a data correspondente à data atual menos n dias
DaysAgo(<number>)
DaysAgoInt
Retorna a data (inteiro aaaammdd) correspondente à data atual menos n dias
DaysAgoInt(<number>)
DaysDiff
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(<end date>, <start date>)
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>)
Oldest
Retorna a data mais antiga em um intervalo
Mais antigo (<data, data>)
Second
Retorna os segundos da data
Second(<date>)
SecondsDiff
Retorna o número de segundos entre duas datas
SecondsDiff(<data final>, <data inicial>)
SubDays
Subtrai um número de dias a partir de uma data
SubDays(<data>, <número>)
SubHours
Subtrai um número de horas a partir 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 a partir de uma data
SubMonths(<data>, <número>)
SubSeconds
Subtrai um número de segundos a partir de uma data
SubSeconds(<data>, <número>)
SubYears
Subtrai um número de anos a partir 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 cadeia de caracteres em carimbo de data/hora
ToTimestamp(<cadeia de caracteres>)
ToTimeZone
Converter uma data + hora em fuso horário
ToTimeZone(<data>,<fuso horário>)
TruncDate
Arredonda uma data e hora para o segundo mais próximo
TruncDate(@lastModified, <número de segundos>)
TruncDateTZ
Arredonda uma data e hora para 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 de horário para cima até o próximo segundo
TruncTim(e<date>, <number of seconds>)
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 na semana da data (0=segunda-feira, 6=domingo)
WeekDay(<data>)
Year
Retorna o número que representa o ano da data
Year(<data>)
YearAnd Month
Retorna o número que representa o ano e o mês da data.
YearAndMonth(<data>)
AnosAtrás
Retorna o número de anos entre uma determinada data e a data atual
YearsAgo(<data>)
YearsDiff
Retorna o número de anos entre as duas datas
YearsDiff(<data final>, <data inicial>)
YearsOld
Retorna a idade em anos de uma data
YearsOld(<date>)
NOTE
Observe que a função Dateonly considera o fuso horário do servidor e nã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 texto 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(<number>)
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(<number 1>, <number 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 decimais n
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 o decimal n2
Trunc(<n1>, <n2>)

Outros

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

Nome
Descrição
Sintaxe
CriptografiaAEM
Cadeia de caracteres criptografada 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(<condition>, <value 1>), Else(<value 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(<value 1>, <value 2>, <value 3>, <value 4>)
Else
Retorna o valor 1 (só pode ser usado como parâmetro da função case)
Else(<value 1>, <value 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(<condition>, <value 1>, <value 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(<value 1>, <value 2>, <value 3>)
NovoUUID
Retorna uma ID exclusiva
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(<condition>, <value 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(<number>)
Charindex
Retorna a posição da string 2 na string 1.
Charindex(<string>, <string>)
dataLength
Retorna o tamanho em bytes da cadeia de caracteres
dataLength(<string>)
GetLine
Retorna a linha enésima (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 memorando passado como parâmetro é nulo
IsMemoNull(<memo>)
JuxtWords
Concatena a string transmitidas como parâmetros. Adiciona espaços entre a string, se necessário.
JuxtWords(<string>, <string>)
JuxtWords3
Concatena a string transmitidas como parâmetros. Adiciona espaços entre a string, se necessário
JuxtWords3(<string>, <string>, <string>)
Left
Retorna os primeiros n caracteres da string
Left(<string>, <number>)
Length
Retorna o comprimento da string
Length(<string>)
Linha
Extrair linha n da cadeia de caracteres
Line(<string>,<number>)
Lower
Retorna a string em minúsculas
Lower(<string>)
LPad
Retorna a string concluída à esquerda
LPad (<Cadeia de caracteres>, <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 memorando contém a string aprovada como um parâmetro
MemoContains(<memorando>, <string>)
ValorDoNó
Extrai o valor de um campo XML de seu XPath e dos dados do campo
NodeValue (<String>, <String>)
Replace
Substitui todas as ocorrências de um valor de cadeia de caracteres especificado por outro valor de cadeia de caracteres.
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 cadeia de caracteres.
Sha256Digest (<Cadeia de caracteres>)
Sha512Digest
Representação hexadecimal da chave SHA512 de uma cadeia de caracteres.
Sha512Digest (<Cadeia de caracteres>)
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 cadeira de caracteres e de comprimento n2
Substring(<string>, <offset>, <length>)
ToString
Converte o número em uma string
ToString(<number>, <number>)
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
_Sobre__
Execute a chamada de função SQL inserida como o primeiro parâmetro, em Partição ou Ordenar pelos campos inseridos como o segundo parâmetro
_Over_ (<Value>, <Value>)
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 query 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(<value 1>), OrderBy(<value 1>))
recommendation-more-help
c39c2d00-ba9a-424b-adf9-66af58a0c34b