Esta função retorna um momento calculado a partir da hora hh, do minuto mm e do segundo ss.
Sintaxe:
MakeTime(hh [ , mm [ , ss ] ])
Tipo de dados de retorno: dual
Argumentos
Argumento
Descrição
hh
A hora como um inteiro.
mm
O minuto como um inteiro.
Se nenhum minuto for indicado, 00 será assumido.
ss
O segundo como um inteiro.
Se nenhum segundo for indicado, 00 será assumido.
Quando usar
A função maketime() normalmente seria usada no script para geração de dados para gerar um campo de hora. Às vezes, quando o campo de hora é derivado do texto de entrada, essa função pode ser usada para construir a hora usando seus componentes.
Estes exemplos usam o formato de hora h:mm:ss. O formato de hora é especificado no comando SET TimeFormat na parte superior do seu script de carregamento de dados. Altere o formato nos exemplos para atender às suas necessidades.
Exemplos de funções
Exemplo
Resultado
maketime(22)
Retorna 22:00:00.
maketime(22, 17)
Retorna 22:17:00.
maketime(22,17,52 )
Retorna 22:17:52.
Configurações regionais
A menos que especificado de outra forma, os exemplos neste tópico usam o seguinte formato de data: MM/DD/AAAA. O formato de data é especificado na instrução SET DateFormat no seu script de carregamento de dados. A formatação de data padrão pode ser diferente no seu sistema devido às suas configurações regionais e outros fatores. Você pode alterar os formatos nos exemplos abaixo para atender às suas necessidades. Ou pode alterar os formatos no seu script de carregamento para corresponder a esses exemplos. Para obter mais informações, consulte Modificando configurações regionais para aplicativos e scripts.
As configurações regionais padrão nos aplicativos são baseadas no perfil do usuário. Essas configurações de formato regional não estão relacionadas ao idioma exibido na interface do usuário do Qlik Cloud. O Qlik Cloud será exibido no mesmo idioma do navegador que você está usando.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
transaction_hour
transaction_minute
transaction_second
transaction_time
Tabela de resultados
transaction_hour
transaction_minute
transaction_second
transaction_time
2
52
22
2:52:22 AM
6
32
07
6:32:07 AM
9
25
23
9:25:23 AM
12
09
16
12:09:16 PM
17
55
22
5:55:22 PM
18
43
30
6:43:30 PM
21
43
41
9:43:41 PM
O campo transaction_time é criado na instrução de carregamento anterior usando a função maketime() e informando os campos de hora, minuto e segundo como argumentos da função.
Em seguida, a função combina e converte esses valores em um campo de tempo, retornando os resultados no formato de tempo da variável de sistema TimeFormat.
Exemplo 2: função time()
Visão geral
Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova guia.
O script de carregamento contém:
O mesmo conjunto de dados e cenário do primeiro exemplo.
A criação de um campo, transaction_time, que nos permitirá mostrar os resultados no formato de 24 horas sem modificar a variável de sistema TimeFormat.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
transaction_hour
transaction_minute
transaction_second
transaction_time
Tabela de resultados
transaction_hour
transaction_minute
transaction_second
transaction_time
2
52
22
2:52:22
6
32
07
6:32:07
9
25
23
9:25:23
12
09
16
12:09:16
17
55
22
17:55:22
18
43
30
18:43:30
21
43
41
21:43:41
Nesse caso, a função maketime() está aninhada dentro da função time(). O segundo argumento da função time() define o formato dos resultados da função maketime() como a h:mm:ss necessária.
Exemplo 3: Exemplo de objeto de gráfico
Visão geral
Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova guia.
O script de carregamento contém:
Um conjunto de dados contendo um conjunto de transações que é carregado em uma tabela denominada Transactions.
Os tempos de transação são fornecidos em dois campos: hours e minutes.
A criação de um campo, transaction_time, que retorna a hora no formato da variável de sistema TimeFormat.
Crie uma medida de objeto de gráfico, transaction_time, que retorna uma hora no formato h:mm:ss TT.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
transaction_hour
transaction_minute
Para calcular a transaction_time, crie esta medida:
=maketime(transaction_hour,transaction_minute)
Tabela de resultados
transaction_hour
transaction_minute
=maketime(transaction_hour, transaction_minute)
2
52
2:52:00 AM
6
32
6:32:00 AM
9
25
9:25:00 AM
12
09
12:09:00 PM
17
55
5:55:00 PM
18
43
6:43:00 PM
21
43
9:43:00 PM
A medida transaction_time é criada no objeto de gráfico usando a função maketime() e informando os campos de hora e minuto como argumentos da função.
A função então combina esses valores, e os segundos são considerados 00. Esses valores são então convertidos em um campo de hora, retornando os resultados no formato da variável de sistema TimeFormat.
Exemplo 4: Cenário
Visão geral
Crie um conjunto de dados do calendário para o mês de janeiro de 2022, dividido em incrementos de oito horas.
Script de carregamento
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';
tmpCalendar:
load
*
where year(date)=2022;
load
date(recno()+makedate(2021,12,31)) as date
AutoGenerate 31;
Left join(tmpCalendar)
load
maketime((recno()-1)*8,00,00) as time
autogenerate 3;
Calendar:
load
timestamp(date + time) as timestamp
resident tmpCalendar;
drop table tmpCalendar;
Resultados
Tabela de resultados
carimbo de data/hora
1/1/2022 12:00:00 AM
1/1/2022 8:00:00 AM
1/1/2022 4:00:00 PM
1/2/2022 12:00:00 AM
1/2/2022 8:00:00 AM
1/2/2022 4:00:00 PM
1/3/2022 12:00:00 AM
1/3/2022 8:00:00 AM
1/3/2022 4:00:00 PM
1/4/2022 12:00:00 AM
1/4/2022 8:00:00 AM
1/4/2022 4:00:00 PM
1/5/2022 12:00:00 AM
1/5/2022 8:00:00 AM
1/5/2022 4:00:00 PM
1/6/2022 12:00:00 AM
1/6/2022 8:00:00 AM
1/6/2022 4:00:00 PM
1/7/2022 12:00:00 AM
1/7/2022 8:00:00 AM
1/7/2022 4:00:00 PM
1/8/2022 12:00:00 AM
1/8/2022 8:00:00 AM
1/8/2022 4:00:00 PM
1/9/2022 12:00:00 AM
Mais de 68 linhas
A função autogenerate inicial cria um calendário contendo todas as datas de janeiro em uma tabela denominada tmpCalendar.
Uma segunda tabela, contendo três registros, é criada. Para cada registro, recno() – 1 é obtido (valores 0, 1, 2), e o resultado é multiplicado por 8. Como resultado, isso gera os valores 0, 8, 16. Esses valores são usados como o parâmetro de hora em uma função maketime(), com valores de minuto e segundo de 0. Como resultado, a tabela contém três campos de horário: 12:00:00 AM, 8:00:00 AM e 4:00:00 PM.
Essa tabela está unida à tabela tmpCalendar. Como não há campos correspondentes entre as duas tabelas para a união, as linhas de tempo são adicionadas a cada linha de data. Como resultado, cada linha de data agora é repetida três vezes com cada valor de tempo.
Finalmente, a tabela de calendário é criada a partir de um carregamento residente da tabela tmpCalendar. Os campos de data e hora são concatenados e agrupados na função timestamp() para criar o campo de carimbo de data/hora.
A tabela tmpCalendar é então descartada.
Esta página ajudou?
Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!