Referência de Funções (Data Flow)
As funções a seguir são usadas com operadores em um fluxo de dados para permitir que você crie expressões.
Função | Descrição | Exemplo |
---|---|---|
COUNT(value[, value]*) | Retorna o número de linhas para as quais uma ou mais expressões fornecidas são todas não nulas. | COUNT(expr1) |
COUNT(*) | Retorna o número total de linhas recuperadas, incluindo linhas contendo nulos. | COUNT(*) |
MAX(value) | Retorna o valor máximo do argumento. | MAX(expr) |
MIN(value) | Retorna o valor mínimo do argumento. | MIN(expr) |
SUM(numeric) | Retorna a soma calculada com base nos valores de um grupo. | SUM(expr1) |
AVG(numeric) | Retorna a média de valores numéricos em uma expressão. | AVG(AGGREGATE_1.src1.attribute1) |
LISTAGG(column[, delimiter]) WITHIN GROUP (order_by_clause) | Concatena valores da coluna de entrada com o delimitador especificado, para cada grupo com base na cláusula de ordem. coluna contém os valores que você deseja concatenar juntos no resultado. O delimitador separa os valores de coluna no resultado. Se um delimitador não for fornecido, um caractere vazio será usado. order_by_clause determina a ordem em que os valores concatenados são retornados. Essa função só pode ser usada como agregador e pode ser usada com agrupamento ou sem agrupamento. Se você usar sem agrupamento, o resultado será uma única linha. Se você usar com um agrupamento, a função retornará uma linha para cada grupo. | Considere uma tabela com duas colunas,
Exemplo 1: Sem agrupamento
Exemplo 2: Agrupar pelo
|
Função | Descrição | Exemplo |
---|---|---|
FIRST_VALUE(value) OVER ([ partition_clause ] order_by_clause [ windowFrame_clause ] ) |
Retorna o valor avaliado na linha que é a primeira do quadro da janela. | FIRST_VALUE(BANK_ID) OVER (PARTITION BY BANK_ID ORDER BY BANK_NAME ROWS BETWEEN CURRENT ROW AND 1 FOLLOWING) retorna o primeiro valor BANK_ID em uma janela na qual as linhas são calculadas como linha atual e 1 linha após essa linha, particionadas por BANK_ID e em ordem crescente de BANK_NAME . |
LAG(value[, offset[, default]]) OVER ([ partition_clause ] order_by_clause) |
Retorna o valor avaliado na linha em um determinado deslocamento antes da linha atual dentro da partição. Se não houver essa linha, o valor padrão será retornado. O deslocamento e o padrão são avaliados em relação à linha atual. Se omitido, o desvio é padronizado como 1 e o padrão é NULL. | LAG(BANK_ID, 2, 'hello') OVER (PARTITION BY BANK_ID ORDER BY BANK_NAME DESC) retorna o valor BANK_ID da segunda linha antes da linha atual, particionada por BANK_ID e em ordem decrescente de BANK_NAME . Se não houver esse valor, hello será retornado. |
LAST_VALUE(value) OVER ([ partition_clause ] order_by_clause [ windowFrame_clause ]) |
Retorna o valor avaliado na linha que é a última do quadro da janela. | LAST_VALUE(BANK_ID) OVER (PARTITION BY BANK_ID ORDER BY BANK_NAME ROWS BETWEEN CURRENT ROW AND 1 FOLLOWING) retorna o último valor BANK_ID em uma janela na qual as linhas são calculadas como a linha atual e 1 linha após essa linha, particionada por BANK_ID e em ordem crescente de BANK_NAME . |
LEAD(value[, offset[, default]]) OVER ([ partition_clause ] order_by_clause) |
Retorna o valor avaliado na linha em um determinado deslocamento após a linha atual dentro da partição. Se não houver essa linha, o valor padrão será retornado. O deslocamento e o padrão são avaliados em relação à linha atual. Se omitido, o desvio é padronizado como 1 e o padrão é NULL. | LEAD(BANK_ID, 2, 'hello') OVER (PARTITION BY BANK_ID ORDER BY BANK_NAME) retorna o valor BANK_ID da segunda linha após a linha atual, particionada por BANK_ID e em ordem crescente de BANK_NAME . Se não houver esse valor, hello será retornado. |
RANK() OVER([ partition_clause ] order_by_clause) |
Retorna a classificação da linha atual com lacunas, contando a partir de 1. | RANK() OVER (PARTITION BY BANK_ID ORDER BY BANK_NAME) retorna a classificação de cada linha dentro do grupo de partições de BANK_ID , em ordem crescente de BANK_NAME . |
ROW_NUMBER() OVER([ partition_clause ] order_by_clause) |
Retorna o número exclusivo da linha atual dentro de sua partição, contando a partir de 1. | ROW_NUMBER() OVER (PARTITION BY BANK_ID ORDER BY BANK_NAME) retorna o número de linha exclusivo de cada linha dentro do grupo de partições de BANK_ID , em ordem crescente de BANK_NAME . |
Função | Descrição | Exemplo |
---|---|---|
ABS(numeric) | Retorna a potência absoluta do valor numeric . | ABS(-1) |
CEIL(numeric) | Retorna o menor inteiro não maior que o valor numeric | CEIL(-1,2) |
FLOOR(numeric) | Retorna o maior inteiro não maior que o valor numeric . | FLOOR(-1,2) |
MOD(numeric1, numeric2) | Retorna o resto depois que numeric1 é dividido por numeric2 . | MOD(8,2) |
POWER(numeric1, numeric2) | Eleva numeric1 à potência de numeric2 . | POWER(2,3) |
ROUND(numeric1, numeric2) | Retorna numeric1 arredondado para numeric2 casas decimais. | ROUND(2.5,0) |
TRUNC(numeric1, numeric2) | Retorna numeric1 truncado em numeric2 casas decimais. | TRUNC(2.5,0) |
TO_NUMBER(expr[, format, locale]) | Converte um expr em um número, com base em format e em locale opcional fornecidos. A configuração regional padrão é en-US . Tags de idioma suportadas.Padrões de formato suportados:
|
|
Somente o operador de Expressão suporta funções de matriz.
Função | Descrição | Exemplo |
---|---|---|
ARRAY_POSITION(array(...), element) | Retorna a posição da primeira ocorrência do elemento fornecido no array fornecido. A posição não é baseada em zero, em vez disso, começa com 1. | ARRAY_POSITION(array(3, 2, 1, 4, 1), 1) retorna 3 |
REVERSE(array(...)) |
Retorna a matriz fornecida de elementos em uma ordem inversa. | REVERSE(array(2, 1, 4, 3)) retorna [3,4,1,2] |
ELEMENT_AT(array(...), index) |
Retorna o elemento do array fornecido na posição de índice fornecida. O índice não é baseado em zero, em vez disso, começa com 1. Se |
ELEMENT_AT(array(1, 2, 3), 2) retorna 2 |
Função | Descrição | Exemplo |
---|---|---|
COALESCE(value, value [, value]*) | Retorna o primeiro argumento não nulo, se ele existir; caso contrário, retorna um nulo. | COALESCE(NULL, 1, NULL) retorna 1 |
NULLIF(value, value) | Retorna nulo se os dois valores forem iguais, caso contrário, retorna o primeiro valor. | NULLIF('ABC','XYZ') retorna ABC |
Função | Descrição | Exemplo |
---|---|---|
CURRENT_DATE |
Retorna a data atual. | CURRENT_DATE retorna a data de hoje, como 2023-05-26 |
CURRENT_TIMESTAMP |
Retorna a data atual e a hora do fuso horário da sessão. | CURRENT_TIMESTAMP retorna a data e a hora atuais de hoje, como 2023-05-26 12:34:56
|
DATE_ADD(date, number_of_days) |
Retorna a data que é o number especificado de dias após o date especificado. |
DATE_ADD('2017-07-30', 1) retorna 2017-07-31 |
DATE_FORMAT(expr, format[, locale]) |
Formata uma Padrões de formato de data suportados:
|
|
DAYOFMONTH(date) |
Retorna o dia da data no mês. | DAYOFMONTH('2020-12-25') retorna 25 |
DAYOFWEEK(date) |
Retorna o dia da data na semana. | DAYOFWEEK('2020-12-25') retorna 6 para sexta-feira. Nos Estados Unidos, o domingo é considerado 1, a segunda-feira é 2 e assim por diante. |
DAYOFYEAR(date) |
Retorna o dia da data no ano. | DAYOFYEAR('2020-12-25') retorna 360 |
WEEKOFYEAR(date) |
Retorna a semana da data no ano. |
|
HOUR(datetime) |
Retorna o valor da hora da data/hora. | HOUR('2020-12-25 15:10:30') retorna 15 |
LAST_DAY(date) |
Retorna o último dia do mês da data. | LAST_DAY('2020-12-25') retorna 31 |
MINUTE(datetime) |
Retorna o valor do minuto da data e hora. | HOUR('2020-12-25 15:10:30') retorna 10 |
MONTH(date) |
Retorna o valor do mês da data. | MONTH('2020-06-25') retorna 6 |
QUARTER(date) |
Retorna o trimestre do ano em que a data está. | QUARTER('2020-12-25') retorna 4 |
SECOND(datetime) |
Retorna o valor de segundo da data e hora. | SECOND('2020-12-25 15:10:30') retorna 30 |
TO_DATE(string, format_string[, localeStr]) |
Faz parsing da expressão de string com a expressão format_string para uma data. A configuração regional é opcional. O padrão é en-US . Tags de idioma suportadas.Nas expressões do pipeline,
|
|
TO_TIMESTAMP(expr, format_string[, localeStr]) |
Converte um expr de VARCHAR em um valor de TIMESTAMP, com base no valor format_string e no valor localeStr opcional fornecidos.Nas expressões do pipeline,
|
TO_TIMESTAMP('2020-10-11 11:10:10', 'yyyy-MM-dd HH:mm:ss') retorna um objeto TIMESTAMP que representa 11am 10:10 Oct 11th, 2020 |
WEEK(date) |
Retorna o valor da semana da data. |
WEEK('2020-06-25') retorna 4 |
YEAR(date) |
Retorna o valor do ano da data. | YEAR('2020-06-25') retorna 2020 |
ADD_MONTHS(date_expr, number_months) |
Retorna a data após a adição do número especificado de meses à data, timestamp ou string especificada com um formato yyyy-MM-dd ou yyyy-MM-dd HH:mm:ss.SSS . |
|
MONTHS_BETWEEN(start_date_expr, end_date_expr) |
Retorna o número de meses entre Um número inteiro será retornado se as duas datas forem o mesmo dia do mês ou se ambas forem o último dia em seus respectivos meses. Caso contrário, a diferença será calculada com base em 31 dias por mês. |
|
FROM_UTC_TIMESTAMP(time_stamp, time_zone) |
Interpreta uma data, um timestamp ou uma string como horário UTC e converte esse horário em um timestamp no fuso horário especificado. Para string, use um formato como: O formato de fuso horário é um ID de zona baseado em região (por exemplo, 'área/cidade', como 'Asia/Seoul', ou um deslocamento de fuso horário (por exemplo, UTC+02). |
FROM_UTC_TIMESTAMP('2017-07-14 02:40:00.0', 'GMT+1') retorna 2017-07-14 03:40:00.0 |
TO_UTC_TIMESTAMP(time_stamp, time_zone) |
Converte uma data, um timestamp ou uma string no fuso horário especificado em um timestamp UTC. Para string, use um formato como: O formato de fuso horário é um ID de zona baseado em região (por exemplo, 'área/cidade', como 'Asia/Seoul'), ou um deslocamento de fuso horário (por exemplo, UTC+02). |
TO_UTC_TIMESTAMP('2017-07-14 02:40:00.0', 'GMT+1') retorna 2017-07-14 01:40:00.0
|
FROM_UNIXTIME(unix_time[, fmt]) |
Converte a época ou o horário especificado do Unix em uma string que representa o timestamp desse momento no fuso horário do sistema atual e no formato especificado. Observação: O horário do Unix é o número de segundos decorridos desde 1o de janeiro de 1970 00:00:00 UTC. Se |
O fuso horário padrão é PST nos exemplos |
UNIX_TIMESTAMP([time_expr[, fmt]]) |
Converte o horário atual ou especificado em um timestamp do Unix em segundos.
Se Se |
O fuso horário padrão é PST neste exemplo |
INTERVAL 'year' YEAR[(year_precision)] |
Retorna um período em anos. year_precision é o número de dígitos no campo year; ele varia de 0 a 9. Se year_precision for omitido, o padrão será 2 (deve ser menor que 100 anos). |
|
INTERVAL 'year month' YEAR[(year_precision)] TO MONTH |
Retorna um período em anos e meses. Use para armazenar um período usando os campos year e month. year_precision é o número de dígitos no campo year; ele varia de 0 a 9. Se year_precision for omitido, o padrão será 2 (deve ser menor que 100 anos). |
INTERVAL '100-5' YEAR(3) TO MONTH retorna um intervalo de 100 anos e 5 meses. Especifique a precisão do ano principal de 3. |
INTERVAL 'month' MONTH[(month_precision)] |
Retorna um período em meses. month_precision é o número de dígitos no campo mês; ele varia de 0 a 9. Se month_precision for omitido, o padrão será 2 (deve ser menor que 100 anos). |
INTERVAL '200' MONTH(3) retorna um intervalo de 200 meses. Especifique a precisão do mês de 3. |
INTERVAL 'day time' DAY[(day_precision)] TO SECOND[(fractional_seconds_precision)] |
Retorna um período em termos de dias, horas, minutos e segundos. day_precision é o número de dígitos no campo day; ele varia de 0 a 9. O padrão é 2. fractional_seconds_precision é o número de dígitos na parte fracionária do valor do segundo no campo time; ele varia de 0 a 9. |
INTERVAL '11 10:09:08.555' DAY TO SECOND(3) retorna um intervalo de 11 dias, 10 horas, 09 minutos, 08 segundos e 555 milésimos de segundo |
INTERVAL 'day time' DAY[(day_precision)] TO MINUTE[(minute_precision)] |
Retorna um período em termos de dias, horas e minutos. day_precision é o número de dígitos no campo day; ele varia de 0 a 9. O padrão é 2. minute_precision é o número de dígitos no campo minute; ele varia de 0 a 2. O padrão é 2. |
INTERVAL '11 10:09' DAY TO MINUTE retorna um intervalo de 11 dias, 10 horas e 09 minutos |
INTERVAL 'day time' DAY[(day_precision)] TO HOUR[(hour_precision)] |
Retorna um período em termos de dias e horas. day_precision é o número de dígitos no campo day; ele varia de 0 a 9. O padrão é 2. hour_precision é o número de dígitos no campo hora; ele varia de 0 a 2. O padrão é 2. |
INTERVAL '100 10' DAY(3) TO HOUR retorna um intervalo de 100 dias e 10 horas |
INTERVAL 'day' DAY[(day_precision)] |
Retorna um período em termos de dias. day_precision é o número de dígitos no campo day; ele varia de 0 a 9. O padrão é 2. |
INTERVAL '999' DAY(3) retorna um intervalo de 999 dias |
INTERVAL 'time' HOUR[(hour_precision)] TO SECOND[(fractional_seconds_precision)] |
Retorna um período em termos de horas, minutos e segundos. hour_precision é o número de dígitos no campo hora; ele varia de 0 a 2. O padrão é 2. fractional_seconds_precision é o número de dígitos na parte fracionária do valor do segundo no campo time; ele varia de 0 a 9. |
INTERVAL '09:08:07.6666666' HOUR TO SECOND(7) retorna um intervalo de 9 horas, 08 minutos e 7.6666666 segundos |
INTERVAL 'time' HOUR[(hour_precision)] TO MINUTE[(minute_precision)] |
Retorna um período em termos de horas e minutos. hour_precision é o número de dígitos no campo hora; ele varia de 0 a 2. O padrão é 2. minute_precision é o número de dígitos no campo minute; ele varia de 0 a 2. O padrão é 2. |
INTERVAL '09:30' HOUR TO MINUTE retorna um intervalo de 9 horas e 30 minutos |
INTERVAL 'hour' HOUR[(hour_precision)] |
Retorna um período em termos de horas. hour_precision é o número de dígitos no campo hora; ele varia de 0 a 2. O padrão é 2. |
INTERVAL '40' HOUR retorna um intervalo de 40 horas |
INTERVAL 'minute' MINUTE[(minute_precision)] |
Retorna um período em termos de minutos. minute_precision é o número de dígitos no campo minute; ele varia de 0 a 2. O padrão é 2. |
INTERVAL '15' MINUTE retorna um intervalo de 15 minutos |
INTERVAL 'time' MINUTE[(minute_precision)] TO SECOND[(fractional_seconds_precision)] |
Retorna um período em termos de minutos e segundos. minute_precision é o número de dígitos no campo minute; ele varia de 0 a 2. O padrão é 2. fractional_seconds_precision é o número de dígitos na parte fracionária do valor do segundo no campo time; ele varia de 0 a 9. |
INTERVAL '15:30' MINUTE TO SECOND retorna um intervalo de 15 minutos e 30 segundos |
INTERVAL 'second' SECOND[(fractional_seconds_precision)] |
Retorna um período em termos de segundos. fractional_seconds_precision é o número de dígitos na parte fracional do campo segundo; ele varia de 0 a 9. O padrão é 3. |
INTERVAL '15.678' SECOND retorna um intervalo de 15,678 segundos |
Função | Descrição | Exemplo |
---|---|---|
MD5(all data types) | Calcula uma soma de verificação MD5 do tipo de dados e retorna um valor de string. | MD5(column_name) |
SHA1(all data types) | Calcula um valor de hash SHA-1 do tipo de dados e retorna um valor de string. | SHA1(column_name) |
SHA2(all data types, bitLength) | Calcula um valor de hash SHA-2 do tipo de dados e retorna um valor de string. bitLength é um número inteiro. | SHA2 (column_name, bitLength can be set to 0 (equivalent to 256), 256, 384, or 512) . |
ORA_HASH(expr, [max_bucket], [seed_value]) |
Calcula um valor de hash para
A Oracle aplica a função hash à combinação de |
|
Função | Descrição | Exemplo |
---|---|---|
SCHEMA_OF_JSON(string) | Faz parsing de uma string JSON e infere o esquema no formato DDL. |
|
FROM_JSON(column, string) | Faz parsing de uma coluna que contém uma string JSON em um dos tipos a seguir, com o esquema especificado.
|
|
TO_JSON(column) | Converte uma coluna que contém um tipo Struct ou Array de Structs ou um tipo Map ou Array de Map em uma string JSON. | TO_JSON(TO_STRUCT('s1', TO_ARRAY(1,2,3), 's2', TO_MAP('key', 'value'))) retorna uma string JSON {"s1":[1,2,3],"s2":{"key":"value"}} |
TO_MAP(string,column[,string,column]*) | Cria uma nova coluna do tipo Map. As colunas de entrada devem ser agrupadas como pares de chave/valor. As colunas de chave de entrada não podem ser nulas e devem ter todas o mesmo tipo de dados. As colunas de valor de entrada devem todas ter o mesmo tipo de dados. |
|
TO_STRUCT(string,column[,string,column]*) | Cria uma nova coluna do tipo Struct. As colunas de entrada devem ser agrupadas como pares de chave/valor. |
|
TO_ARRAY(column[,column]*) | Cria uma nova coluna como tipo Array. As colunas de entrada devem todas ter o mesmo tipo de dados. |
|
Os operadores de fluxo de dados que suportam a criação de expressões e tipos de dados hierárquicos podem usar funções de ordem superior.
Estes são os operadores suportados:
-
Agregado
-
Expressão
-
Filtro
-
Associar
-
Lookup
-
Divisão
-
Deslocar
Função | Descrição | Exemplo |
---|---|---|
TRANSFORM(column, lambda_function) | Recebe uma matriz e uma função anônima e configura uma nova matriz aplicando a função a cada elemento e atribuindo o resultado à matriz de saída. | Para um array de entrada de inteiros [1, 2, 3] , TRANSFORM(array, x -> x + 1) retorna um novo array de [2, 3, 4] . |
TRANSFORM_KEYS(column, lambda_function) | Usa um mapa e uma função com 2 argumentos (chave e valor) e retorna um mapa no qual as chaves têm o tipo do resultado da função lambda, e os valores têm o tipo dos valores de mapa da coluna. | Para um mapa de entrada com chaves inteiras e valores de string {1 -> 'value1', 2 -> 'value2', 3 -> 'value3'} , TRANSFORM_KEYS(map, (k, v) -> k * 2 + 1) retorna um novo mapa de {3 -> 'value1', 5 -> 'value2', 7 -> 'value3'} . |
TRANSFORM_VALUES(column, lambda_function) | Usa um mapa e uma função com 2 argumentos (chave e valor) e retorna um mapa no qual os valores têm o tipo do resultado das funções lambda, e as chaves têm o tipo das chaves de mapa de coluna. | Para um mapa de entrada com chaves de string e valores de string {'a' -> 'value1', 'b' -> 'value2', 'c' -> 'value3'} , TRANSFORM_VALUES(map, (k, v) -> k || __ '' || v) retorna um novo mapa de {'a' -> 'a_value1', 'b' -> 'b_value2', 'c' -> 'c_value3'} . |
ARRAY_SORT(array(...), lambda_function) |
Somente o operador de Expressão suporta Recebe uma matriz e classifica de acordo com a função fornecida que recebe 2 argumentos. A função deve retornar -1, 0 ou 1, dependendo de o primeiro elemento ser menor que, igual a ou maior que o segundo elemento. Se a função for omitida, a matriz será classificada em ordem crescente. |
A matriz retornada é: [1,5,6] |
Função | Descrição | Exemplo |
---|---|---|
CASE WHEN condition1 THEN result1 ELSE result2 END | Retorna o valor cuja condição é atendida. | CASE WHEN 1 > 0 THEN 'ABC' ELSE 'XYZ' END retorna ABC se 1> 0 ; caso contrário, retorna XYZ |
AND | O operador lógico AND. Retorna verdadeiro se os dois operandos forem verdadeiros; caso contrário, retorna falso. | (x = 10 AND y = 20) retorna "true" se x for igual a 10 e y for igual a 20. Se um dos dois não for verdadeiro, retornará "false" |
OR | O operador lógico OR. Retorna verdadeiro se um operando for verdadeiro ou ambos forem verdadeiros; caso contrário, retorna falso. | (x = 10 OR y = 20) retorna "false" se x não for igual a 10 e também y não for igual a 20. Se um for verdadeiro, retornará "true" |
NOT | O operador lógico NOT. | |
LIKE | Executa correspondência de padrão de string, se string1 corresponder ao padrão em string2. | |
= | Verifica a igualdade. Retorna verdadeiro se expr1 for igual a expr2; caso contrário, retorna falso. | x = 10 retorna "true" quando o valor de x é 10, caso contrário, retorna "false" |
!= | Verifica a desigualdade. Retorna verdadeiro se expr1 não for igual a expr2; caso contrário, retorna falso. | x != 10 retorna "false" se o valor de x for 10, caso contrário, retorna "true" |
> | Verifica uma expressão maior que. Retorna verdadeiro se expr1 for maior que expr2. | x > 10 retorna "true" se o valor de x for maior que 10, caso contrário, retorna "false" |
>= | Testa uma expressão maior que ou igual a. Retorna verdadeiro se expr1 for maior ou igual a expr2. | x > =10 retorna "true" se o valor de x for maior ou igual a 10, caso contrário, retorna "false" |
< | Testa uma expressão menor que. Retorna verdadeiro se expr1 for menor que expr2. | x < 10 retorna "true" se o valor de x for menor que 10, caso contrário, retornará "false" |
<= | Testa uma expressão menor que ou igual a. Retorna verdadeiro se expr1 for menor ou igual a expr2. | x <= 10 retorna "true" se o valor de x for menor que 10, caso contrário, retorna "false" |
|| | Concatena duas strings. | 'XYZ' || 'hello' retorna 'XYZhello' |
BETWEEN | Avalia um intervalo. | FILTER_1.BANK.BANK_ID BETWEEN 1003 AND 1007 |
IN | Testa se uma expressão corresponde a uma lista de valores. | FILTER_2.ORDERS.ORDER_ID IN (1003, 1007) |
Funções | Descrição | Exemplo |
---|---|---|
CAST(value AS type) | Retorna o valor especificado no tipo especificado. | CAST("10" AS INT) retorna 10 |
CONCAT(string, string) | Retorna os valores combinados de strings ou colunas. | CONCAT('Oracle','SQL') retorna OracleSQL |
CONCAT_WS(separator, expression1, expression2, expression3,...) |
Retorna os valores combinados de strings ou colunas usando o separador especificado entre as strings ou colunas. Um separador é obrigatório e deve ser uma string. Pelo menos uma expressão deve ser fornecida após o separador. Por exemplo: |
CONCAT_WS('-', 'Hello', 'Oracle') retorna Hello-Oracle
Se um filho da função for um array, o array será nivelado:
|
INITCAP(string) | Retorna a string com a primeira letra de cada palavra em maiúscula, enquanto todas as outras letras ficam em minúsculas e cada palavra é delimitada por um espaço em branco. | INITCAP('oRACLE sql') retorna Oracle Sql |
INSTR(string, substring[start_position]) | Retorna o índice (baseado em 1) da primeira ocorrência de substring em string . | INSTR('OracleSQL', 'SQL') retorna 7 |
LOWER(string) | Retorna a string com todas as letras alteradas para minúsculas. | LOWER('ORACLE') retorna oracle |
LENGTH(string) | Retorna o tamanho do caractere da string ou o número de bytes de dados binários. O tamanho da string inclui espaços à direita. | LENGTH('Oracle') retorna 6 |
LTRIM(string) | Retorna a string com espaços à esquerda removidos. | LTRIM(' Oracle') |
NVL(expr1, epxr2) | Retorna o argumento que não é nulo. | NVL(EXPRESSION_3.CUSTOMERS_JSON.CONTINENT_ID, ROWID()) |
REGEXP_SUBSTR(string, regexp[, RegexGroupIdx]) | Pesquisa e extrai a string que corresponde a um padrão de expressão regular da string de entrada. Se o índice do grupo de captura opcional for informado, a função extrairá o grupo específico. |
REGEXP_SUBSTR('22;33;44', '([0-9.]*);([0-9.]*);([0-9.]*)', 1) retorna 22 |
REPLACE(string, search, replacement) | Substitui todas as ocorrências de search por replacement .Se Se | REPLACE('ABCabc', 'abc', 'DEF') retorna ABCDEF |
RTRIM(string) | Retorna a string com espaços à esquerda removidos da direita. | RTRIM('Oracle ') |
SUBSTRING(string, position[, substring_length]) | Retorna a substring que começa na posição. | SUBSTRING('Oracle SQL' FROM 2 FOR 3) returns rac |
Para números, TO_CHAR(expr) e datas TO_CHAR(expr, format[, locale]) | Converte números e datas em strings. Para números, nenhum formato é necessário. Para datas, use o mesmo formato que DATE_FORMAT descrito em Funções de Data e Hora. A configuração regional padrão é en-US . Consulte tags de idioma suportadas.Nas expressões do pipeline,
| Exemplo de número: Exemplo de data: |
UPPER(string) | Retorna uma string com todas as letras alteradas para maiúsculas. | UPPER('oracle') retorna ORACLE |
LPAD(str, len[, pad]) | Retorna uma string preenchida à esquerda com caracteres especificados para um determinado tamanho. Se o caractere pad for omitido, o padrão será um espaço. | LPAD('ABC', 5, '*') retorna '**ABC' |
RPAD(str, len[, pad]) | Retorna uma string preenchida à direita com caracteres especificados para um determinado tamanho. Se o caractere pad for omitido, o padrão será um espaço. | RPAD('XYZ', 6, '+' ) returns 'XYZ+++' |
Função | Descrição | Exemplo |
---|---|---|
NUMERIC_ID() | Gera um identificador exclusivo universal que é um número de 64 bits para cada linha. | NUMERIC_ID() retorna, por exemplo, 3458761969522180096 e 3458762008176885761 |
ROWID() | Gera números monotonicamente crescentes de 64 bits. | ROWID() retorna, por exemplo, 0 , 1 , 2 e assim por diante |
UUID() | Gera um identificador exclusivo universal que é uma String de 128 bit para cada linha. | UUID() retorna, por exemplo, 20d45c2f-0d56-4356-8910-162f4f40fb6d |
MONOTONICALLY_INCREASING_ID() |
Gera inteiros exclusivos e monotonicamente crescentes de 64 bits que são números não consecutivos. | MONOTONICALLY_INCREASING_ID() retorna, por exemplo, 8589934592 e 25769803776 |