Funções de conversão de tipos de dados date2string ( date_expression ) Retorna uma data como sequência no formato AAAA-MM-DD. time2string ( time_expression ) Retorna uma hora como sequência no formato HH:MM:SS.FFF. timeTZ2string ( timeTZ_expression ) Retorna horários com o fuso horário como sequência no formato HH:MM:SS.FFF +HHMM ou no formato HH:MM:SS.FFFFFFF -HHMM. Por exemplo, -05:30 significa um fuso horário de GMT menos 5 horas e 30 minutos timestamp2string ( timestamp_expression ) Retorna um timestamp como sequênciano formato AAAA-MM-DD HH:MM:SS.FFFFFFF. timestampTZ2string ( timestamp_time_zone_expression ) Retorna um registro de data e hora com fuso horário como sequência no formato AAAA-MM-DD HH:MM:SS.FFFFFFF +HHMM ou no formato AAAA-MM-DD HH:MM:SS.FFF -HHMM. DTinterval2string ( date_time_interval_expression ) Retorna intervalos de data/hora como sequência no formato DDDD HH:MM:SS.FFFFFFF ou no formato -DDDD HH:MM:SS.FFF. DTinterval2stringAsTime ( date_time_interval_expression ) Retorna intervalos de data/hora como sequência no formato HHHH:MM:SS.FFFFFFF ou no formato HH:MM:SS.FFF. Dias são convertidos em horas. int2DTinterval ( integer_expression , string_expression ) Converte um número inteiro em um intervalo de datahora. "expressão_string" especifica o que a "expressão_número_inteiro" representa: "ns" = nanossegundos, "s" = segundos (padrão), "m" = minutos, "h" = horas, "d" = dias. Exemplo: int2DTinterval (1020,"h") Resultado: 42 dias 12 horas Exemplo: int2DTinterval (1020,"s") Resultado: 17 minutos mapNumberToLetter ( string_expression , integer_expression ) Adiciona "expressão_número_inteiro" a "expressão_string". Exemplo: mapNumberToLetter ( 'a' , 1 ) Resultado: b nullif ( string_expression1 , string_expression2 ) Retorna nulo se a "expressão_string1" for igual a "expressão_string2" (sem distinção de maiúsculas e minúsculas). Caso contrário, retorna o valor "expressão_string1". mod ( integer_expression1 , integer_expression2 ) Retorna o valor de número inteiro que representa o resto (módulo) de "expressão_número_inteiro1" / "expressão_número_inteiro2". power ( numeric_expression1 , numeric_expression2 ) Retorna "expressão_numérica1" elevada à potência de "expressão_numérica2". Exemplo: power ( 3 , 2 ) Resultado: 9 int2YMinterval ( integer_expression , string_expression ) Converte "expressão_número_inteiro" em um intervalo ano-mês. "Expressão_string" especifica o que a "expressão_número_inteiro" representa: "y" = anos, "m" = meses (padrão). YMinterval2string ( year_month_interval_expression ) Retorna "expressão_intervalo_ano-mês" como uma string no formato (AA MM) ou no formato -(AA MM). number2string ( numeric_expression ) Converte "expressão_numérica" em uma sequência, usando o formato %g especificado (sintaxe C/C++). string2date ( string_expression ) Retorna "expressão_string" como uma data no formato AAAA-MM-DD. Retorna "expressão_string" como um intervalo ano-mês no formato [-]AA MM. string2YMinterval ( string_expression ) Retorna uma "expressão_string" como um intervalo de data/hora no formato [-]DD HH:MM[:SS[.FFF]]. string2DTinterval ( string_expression ) string2time ( string_expression ) Retorna "expressão_string" como um horário no formato HH:MM:SS.FFFFFFF. string2timestamp ( string_expression ) Retorna "expressão_string" como um registro de data e hora no formato AAAA-MM-DD [T|t|[espaço em branco]+] HH:MM:SS.FFFFFFF. string2timestampTZ ( string_expression ) Retorna "expressão_string" nos formatos AAAA-MM-DD HH:MM:SS.FFFFFFF +HHMM ou AAAA-MM-DD [T|t] HH:MM:SS.FFF -HHMM. string2double ( string_expression ) Retorna um número de ponto flutuante. A "String_expression" possui o formato a seguir: "[whitespace] [sign] [digits] [digits] [ {d|D|e|E }[sign]digits]" string2int64 ( string_expression ) Retorna um número inteiro longo. "Expressão_string" tem a seguinte forma: "[whitespace] [{+|-}] [digits]" string2int32 ( string_expression ) Retorna um número inteiro. "Expressão_string" tem a seguinte forma: "[whitespace] [{+|-}] [digits]" date2timestamp ( date_expression ) Converte "expressão_de_data" em um registro de data e hora. A parte das horas do registro de data e hora será zero. timestamp2date ( timestamp_expression ) Converte "expressão_registro_de_data/hora" em uma data. A parte das horas do registro de data e hora será ignorada. timestamp2timestampTZ ( timestamp_expression ) Converte "expressão_registro_de_data/hora" em um registro de data e hora com fuso horário. A parte de deslocamento do registro de data e hora com fuso horário será zero. timestampTZ2timestamp ( timestamp_time_zone_expression ) Converte "expressão_registro_de_data/hora_com_fuso" em um registro de data e hora. A parte de deslocamento do registro de data e hora com fuso horário será ignorada. date2timestampTZ ( date_expression ) Converte "expressão_de_data" em um registro de data e hora com fuso horário. As partes de hora e de fuso horário do registro de data e hora serão zero. timestampTZ2date ( timestamp_time_zone_expression ) Converte "expressão_registro_de_data/hora_com_fuso" em uma data. As partes de hora e de fuso horário do registro de data e hora serão ignoradas. _add_days ( timestamp_expression , integer_expression ) Retorna a data/hora que resultam da soma de "expressão_número_inteiro" dias a "expressão_registro_de_data/hora". Exemplo: _add_days ( 2007-01-14 00:00:00.000 , 3 ) Resultado: 2007-01-17 00:00:00.000 _add_months ( timestamp_expression , integer_expression ) Retorna a data/hora que resultam da soma de "expressão_número_inteiro" meses e "expressão_registro_de_data/hora". _add_years ( timestamp_expression , integer_expression ) Retorna a data/hora que resultam da soma de "expressão_número_inteiro" anos e "expressão_registro_de_data/hora". _age ( timestamp_expression ) Retorna um número pela subtração de "expressão_registro_de_data/hora" da data atual. Exemplo: _age ([Consulta1].[Data]), em que [Consulta1].[Data] é 2 de março de 2004, e hoje é 8 de julho de 2009 Resultado: 50.406, em que 5 é o número de anos, 04 o número de meses e 06 o número de dias. _day_of_week ( timestamp_expression , integer_expression ) Retorna o dia da semana (entre 1 e 7) para "expressão_registro_de_data/hora", em que "expressão_número_inteiro" indica qual dia da semana é o dia 1. Para determinar "expressão_número_inteiro", escolha o dia da semana e conte a partir de segunda-feira; por exemplo, caso escolha quarta-feira, "expressão_número_inteiro" será 3, uma vez que quarta-feira é o terceiro dia da semana a partir de segunda-feira. Exemplo: _day_of_week ( 2009-01-01 , 7 ), em que 7 significa que o domingo é o primeiro dia da semana. Resultado: 5 _day_of_year ( timestamp_expression ) Retorna o ordinal para o dia do ano em "expressão_registro_de_data/hora" (1 a 366). Também conhecido como calendário juliano. _days_between ( timestamp_expression1 , timestamp_expression2 ) Retorna números positivos ou negativos que representam o número de dias entre "expressão_registro_de_data/hora1" e "expressão_registro_de_data/hora2". Se "timestamp_expression1" < "timestamp_expression2", o resultado será um número negativo. _days_to_end_of_month ( timestamp_expression ) Retorna um número representando o número de dias restantes no mês representado pela "expressão_registro_de_data/hora". _first_of_month ( timestamp_expression ) Retorna uma data/hora que sejam o primeiro dia do mês representadas por "expressão_registro_de_data/hora". Exemplo: _first_of_month ( 2009-05-04 00:00:00.000 ) Resultado: retorna 2009-05-01 00:00:00.000. Exemplo: _first_of_month (data_atual) Resultado: retorna 1 de julho de 2009, caso a data atual seja 30 de julho de 2009. _last_of_month ( timestamp_expression ) Retorna uma data/hora que são o último dia do mês representadas por "expressão_registro_de_data/hora". _make_timestamp ( integer_expression1 , integer_expression2 , integer_expression3 ) Retorna um registro de data e hora construído a partir de "expressão_número_inteiro1" (o ano), "expressão_número_inteiro2" (o mês) e "expressão_número_inteiro" (o dia). O padrão da fração de tempo é 00:00:00.000. _months_between ( timestamp_expression1 , timestamp_expression2 ) Retorna números positivos ou negativos que representam o número de meses entre "expressão_registro_de_data/hora1" e "expressão_registro_de_data/hora2". Se "timestamp_expression1" < "timestamp_expression2", o resultado será um número negativo. _week_of_year ( timestamp_expression ) Retorna o número da semana (1-53) do ano, representado por "expressão_registro_de_data/hora". De acordo com o ISO 8601, a semana 1 do ano é a primeira semana do ano que contém uma quinta-feira, o que é equivalente à primeira semana que contém 4 de janeiro. Uma semana começa na segunda-feira (dia 1) e termina no domingo (dia 7). _years_between ( timestamp_expression1 , timestamp_expression2 ) Retorna números inteiros positivos ou negativos que representam o número de anos entre "expressão_registro_de_data/hora1" e "expressão_registro_de_data/hora2". Se "timestamp_expression1" < "timestamp_expression2", um valor negativo será retornado. _ymdint_between ( timestamp_expression1 , timestamp_expression2 ) Retorna um número que representa a diferença entre "expressão_registro_de_data/hora1" e "expressão_registro_de_data/hora2". Esse valor tem a forma AAMMDD, em que AA representa o número de anos, MM representa o número de meses e DD representa o número de dias. Exemplo: _ymdint_between ( [Query1].[Date (data de encerramento)] , [Query1].[Data (data de envio)] ), em que [Query1].[Data (data de encerramento)] é 20 de fevereiro de 2014 e [Query1].[Data (data de envio)] é 19 de janeiro de 2004. Resultado: 101, em que 1 é o número de meses e 01 o número de dias. abs ( numeric_expression ) Retorna o valor absoluto de "expressão_numérica". Se a "expressão_numérica" for negativa, um valor positivo será apresentado. limite ( numeric_expression ) Retorna o menor número inteiro maior que ou igual a "expressão_numérica". exp ( numeric_expression ) Retorna a constante "e" elevada à potência de "expressão_numérica". A constante 'e' é a base do logaritmo natural. Exemplo: exp ( 2 ) Resultado: 7.389056 floor ( numeric_expression ) Retorna o maior número inteiro menor que ou igual a "expressão_numérica". ln ( numeric_expression ) Retorna o logaritmo natural de "expressão_numérica". round ( numeric_expression , integer_expression ) Retorna "expressão_numérica" arredondada para o valor mais próximo, com "expressão_número_inteiro" casas significativas à direita do separador decimal. Quando a "expressão_número_inteiro" for negativa, a "expressão_numérica" será arredondada até o valor absoluto mais próximo, com "expressão_número_inteiro" casas significativas à esquerda do separador decimal. Arredondamentos são feitos antes que a formatação dos dados seja aplicada. Exemplo: round (125, -1) Resultado: 130 sqrt ( numeric_expression ) Retorna a raiz quadrada de "expressão_numérica". Não é possível que "expressão_numérica" seja um valor negativo. character_length ( string_expression ) Retorna o número de caracteres de "expressão_string". extract ( date_part_expression , datetime_expression ) Retorna um número inteiro representando o valor de "expressão_parte_da_data" na "expressão_data/hora". É possível que a "expressão_parte_da_data" seja o ano, o mês, o dia, a hora, o minuto ou o segundo. Exemplo: extract ( 'year' ,string2timestamp( '2003-03-03 16:40:15.535' )) Resultado: 2003 Exemplo: extract ( 'hour' ,string2timestamp( '2003-03-03 16:40:15.535' )) Resultado: 16 lower ( string_expression ) Retorna "expressão_string" com todos os caracteres maiúsculos substituídos por minúsculos. Essa função aparece no relatório de amostra Relatório de desempenho das vendas distribuídas no pacote GO Data Warehouse (consulta). octet_length ( string_expression ) Retorna o número de bytes de "expressão_string". position ( string_expression1 , string_expression2 ) Retorna o valor de número inteiro que representa a posição inicial de "expressão_string1" na "expressão_string2". Retorna 0 se não for encontrada "expressão_string1". substring ( string_expression , integer_expression1 , integer_expression2 ) Retorna uma subsequência de "expressão_string", que começa na posição de "expressão_número_inteiro1", para os caracteres de "expressão_número_inteiro2", ou no final de "expressão_string", se a "expressão_número_inteiro2" for -1. O primeiro caractere de "expressão_string" ocupa a posição 1. subsequência ( [Vendas (análise)].[Equipe de vendas].[Equipe de vendas].[Equipe de vendas].[Código de posição], 3 , 5 ) Resultado: retorna os caracteres 3 a 7 dos códigos de posição. trim ( trim_what_expression , match_character_expression , string_expression ) Retorna uma "expressão_string" cujas lacunas iniciais e/ou finais foram removidas ou cujos caracteres especificados na "expressão_correspondência_caractere" foram removidos. É possível que "ajusta_qual_expressão" seja "leading", "trailing" ou "both" (padrão). É possível que "expressão_correspondência_caractere" seja uma sequência vazia para eliminar espaços ou especifique um caractere a ser eliminado. upper ( string_expression ) Retorna "expressão_string" com todos os caracteres minúsculos substituídos por maiúsculos. status ( expression ) Retorna o status de "expressão". Os valores possíveis são: 0 - OK, 1 - nulo, 2 - não disponível, 4 - dividido por zero, 8 - estouro, 16 - segurança, 32 - erro, 64 - novo, 128 - amostra, 256 - pendente.