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 as configurações regionais do aplicativo.
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!