logo

Tipo de dados TIME em SQL

  • Existem muitos cenários em SQL quando você precisa armazenar a hora nas tabelas SQL do seu banco de dados.
  • Para armazenar a hora em suas tabelas SQL, o primeiro passo deve ser criar uma coluna em sua tabela que seja capaz de armazenar a hora.
  • Se quiser que o tempo seja armazenado na coluna da sua tabela, você precisa criar uma coluna com o tipo de dados TIME.
  • O tipo de dados TIME por padrão armazena a hora no formato 'HH:MM:SS'.
  • Usando a instrução SELECT em SQL, você pode recuperar a hora da coluna das tabelas SQL.
  • Junto com a recuperação da hora no formato padrão em que está armazenada, existe uma função TIME_FORMAT() no SQL, com a qual a hora pode ser recuperada em um formato mais legível.
  • Você pode recuperar a hora no formato padrão em que está armazenada na tabela, ou seja, 'HH:MM:SS', ou também tem a opção de recuperar as partes específicas da hora, como hora, minuto e segundos escolhendo um parâmetro apropriado de acordo com nossa necessidade e passando-o para a função TIME_FORMAT(). A hora também pode ser recuperada no formato de 12 horas e 24 horas.
  • Também podemos imprimir a hora seguida de AM/PM.

Vejamos alguns exemplos práticos para entender esse conceito com mais clareza. Usaremos o banco de dados MySQL para escrever todas as consultas.

Para criar uma tabela no banco de dados, primeiro selecionaremos um banco de dados no qual queremos criar uma tabela.

 mysql> USE dbs; 

Em seguida, escreveremos a seguinte consulta para criar uma tabela:

 mysql> CREATE TABLE items_tbl(ID INT, Item_Name VARCHAR(20), Item_Quantity INT, Item_Price INT, Item_OrderDate DATE, Item_OrderTime TIME); 

Tipo de dados TIME em SQL

Na consulta acima, a coluna chamada ItemOrderTime armazenará o tempo desde que o tipo de dados desta coluna foi definido como 'TIME'.

Agora, escreveremos uma consulta para inserir registros na tabela items_tbl.

int para char java
 mysql> INSERT INTO items_tbl(ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, Item_OrderTime) VALUES(1, 'Soap', 5, 200, '2021-07-08', '04:13:52'), (2, 'Toothpaste', 2, 80, '2021-07-10', '18:09:01'), (3, 'Pen', 10, 50, '2021-07-12', '12:00:02'), (4, 'Bottle', 1, 250, '2021-07-13', '15:07:05'), (5, 'Brush', 3, 90, '2021-07-15', '19:18:43'), (6, 'Notebooks', 10, 1000, '2021-07-26', '05:05:05'), (7, 'Handkerchief', 3, 100, '2021-07-28', '10:08:12'), (8, 'Chips Packet', 5, 50, '2021-07-30', '08:16:58'), (9, 'Marker', 2, 30, '2021-08-13', '02:18:32'), (10, 'Scissors', 1, 60, '2021-08-13', '07:17:30'); 

Tipo de dados TIME em SQL

Executaremos a consulta SELECT para verificar se todos os registros foram inseridos com sucesso na tabela items_tbl.

 mysql> SELECT *FROM items_tbl; 

EU IA Nome do item Quantidade do item Preço do item Item_Data do pedido Item_OrderTime
1 Sabão 5 200 08/07/2021 04:13:52
2 Pasta de dentes 2 80 10/07/2021 18:09:01
3 Caneta 10 cinquenta 12/07/2021 12:00:02
4 Garrafa 1 250 13/07/2021 15:07:05
5 Escovar 3 90 15/07/2021 19:18:43
6 Cadernos 10 1000 2021-07-26 05:05:05
7 Lenço 3 100 2021-07-28 10:08:12
8 Pacote de batatas fritas 5 cinquenta 30/07/2021 08:16:58
9 Marcador 2 30 13/08/2021 02:18:32
10 Tesoura 1 60 13/08/2021 07:17:30

Os resultados da consulta acima mostram que a hora é recuperada no formato padrão em que está armazenada, ou seja, 'HH:MM:SS'.

Exemplo 1:

Escreva uma consulta para recuperar todos os valores de item_tbl e o horário do pedido dos itens em um formato de 12 horas junto com AM/PM para recuperar os valores de horário em um formato mais legível.

Consulta:

 mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%r') AS Formatted_Time FROM items_tbl; 

Aqui, a função TIME_FORMAT() é aplicada em Item_OrderTime com o parâmetro '%r' para imprimir a hora no formato de 12 horas seguida de AM/PM.

Você obterá a seguinte tabela como saída:

EU IA Nome do item Quantidade do item Preço do item Item_Data do pedido Item_OrderTime
1 Sabão 5 200 08/07/2021 04:13:52
2 Pasta de dentes 2 80 10/07/2021 18:09:01
3 Caneta 10 cinquenta 12/07/2021 12h00:02
4 Garrafa 1 250 13/07/2021 15:07:05
5 Escovar 3 90 15/07/2021 19:18:43
6 Cadernos 10 1000 2021-07-26 05:05:05
7 Lenço 3 100 2021-07-28 10:08:12
8 Pacote de batatas fritas 5 cinquenta 30/07/2021 08:16:58
9 Marcador 2 30 13/08/2021 02:18:32
10 Tesoura 1 60 13/08/2021 07:17:30

Exemplo 2:

árvore de pesquisa binária]

Escreva uma consulta para recuperar todos os valores de item_tbl e o horário do pedido dos itens em um formato de 12 horas junto com AM/PM para recuperar os valores de horário em um formato mais legível.

Consulta:

caractere em string
 mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%T %p') AS Formatted_Time FROM items_tbl; 

Aqui, a função TIME_FORMAT() é aplicada em Item_OrderTime com o parâmetro '%T %p'. '%T' imprimirá a hora no formato de 24 horas e '%p' adicionará AM/PM à hora formatada em 24 horas.

Você obterá a seguinte tabela como saída:

EU IA Nome do item Quantidade do item Preço do item Item_Data do pedido Item_OrderTime
1 Sabão 5 200 08/07/2021 04:13:52
2 Pasta de dentes 2 80 10/07/2021 18:09:01
3 Caneta 10 cinquenta 12/07/2021 12h00:02
4 Garrafa 1 250 13/07/2021 15:07:05
5 Escovar 3 90 15/07/2021 19:18:43
6 Cadernos 10 1000 2021-07-26 05:05:05
7 Lenço 3 100 2021-07-28 10:08:12
8 Pacote de batatas fritas 5 cinquenta 30/07/2021 08:16:58
9 Marcador 2 30 13/08/2021 02:18:32
10 Tesoura 1 60 13/08/2021 07:17:30

Exemplo 3:

Escreva uma consulta para recuperar todos os valores de item_tbl e apenas o horário do pedido dos itens de todo o horário do pedido no formato de 24 horas.

Consulta:

 mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%H') AS Item_OrderHour FROM items_tbl; 

Aqui, a função TIME_FORMAT() é aplicada em Item_OrderTime com o parâmetro '%H' para imprimir especificamente a hora em que o item foi pedido. H maiúsculo indica que a hora será impressa no formato de 24 horas.

Você obterá a seguinte tabela como saída:

EU IA Nome do item Quantidade do item Preço do item Item_Data do pedido Item_OrderHour
1 Sabão 5 200 08/07/2021 04
2 Pasta de dentes 2 80 10/07/2021 18
3 Caneta 10 cinquenta 12/07/2021 12
4 Garrafa 1 250 13/07/2021 quinze
5 Escovar 3 90 15/07/2021 19
6 Cadernos 10 1000 2021-07-26 05
7 Lenço 3 100 2021-07-28 10
8 Pacote de batatas fritas 5 cinquenta 30/07/2021 08
9 Marcador 2 30 13/08/2021 02
10 Tesoura 1 60 13/08/2021 07

Exemplo 4:

Escreva uma consulta para recuperar todos os valores de item_tbl e apenas o horário do pedido dos itens de todo o horário do pedido no formato de 12 horas.

Consulta:

 mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%h') AS Item_OrderHour FROM items_tbl; 

Aqui, a função TIME_FORMAT() é aplicada em Item_OrderTime com o parâmetro '%h' para imprimir especificamente a hora em que o item foi pedido. 'h' pequeno indica que a hora será impressa no formato de 12 horas.

Você obterá a seguinte tabela como saída:

inferno de retorno de chamada em javascript
EU IA Nome do item Quantidade do item Preço do item Item_Data do pedido Item_OrderHour
1 Sabão 5 200 08/07/2021 04
2 Pasta de dentes 2 80 10/07/2021 6
3 Caneta 10 cinquenta 12/07/2021 12
4 Garrafa 1 250 13/07/2021 03
5 Escovar 3 90 15/07/2021 07
6 Cadernos 10 1000 2021-07-26 05
7 Lenço 3 100 2021-07-28 10
8 Pacote de batatas fritas 5 cinquenta 30/07/2021 08
9 Marcador 2 30 13/08/2021 02
10 Tesoura 1 60 13/08/2021 07

Exemplo 5:

Escreva uma consulta para recuperar todos os valores de item_tbl e apenas o minuto em que um item é pedido de todo o tempo do pedido.

Consulta:

string concat java
 mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%i') AS Item_OrderMinute FROM items_tbl; 

Aqui, a função TIME_FORMAT() é aplicada em Item_OrderTime com o parâmetro '%i' para imprimir especificamente o minuto em que o item é pedido. 'i' pequeno indica que o minuto de todo o 'Item_OrderTime' será impresso.

Você obterá a seguinte tabela como saída:

EU IA Nome do item Quantidade do item Preço do item Item_Data do pedido Item_OrderMinute
1 Sabão 5 200 08/07/2021 13
2 Pasta de dentes 2 80 10/07/2021 09
3 Caneta 10 cinquenta 12/07/2021 00
4 Garrafa 1 250 13/07/2021 07
5 Escovar 3 90 15/07/2021 18
6 Cadernos 10 1000 2021-07-26 05
7 Lenço 3 100 2021-07-28 08
8 Pacote de batatas fritas 5 cinquenta 30/07/2021 16
9 Marcador 2 30 13/08/2021 18
10 Tesoura 1 60 13/08/2021 17

Exemplo 6:

Escreva uma consulta para recuperar todos os valores de item_tbl e apenas os segundos em que um item é pedido de todo o tempo do pedido.

 mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%S') AS Item_OrderSeconds FROM items_tbl; 

Aqui, a função TIME_FORMAT() é aplicada em Item_OrderTime com o parâmetro '%S' para imprimir especificamente os segundos em que o item é pedido. 'S' maiúsculo indica que o minuto de todo o 'Item_OrderTime' será impresso.

Você obterá a seguinte tabela como saída:

EU IA Nome do item Quantidade do item Preço do item Item_Data do pedido Item_Pedido_Segundos
1 Sabão 5 200 08/07/2021 52
2 Pasta de dentes 2 80 10/07/2021 01
3 Caneta 10 cinquenta 12/07/2021 02
4 Garrafa 1 250 13/07/2021 05
5 Escovar 3 90 15/07/2021 43
6 Cadernos 10 1000 2021-07-26 05
7 Lenço 3 100 2021-07-28 12
8 Pacote de batatas fritas 5 cinquenta 30/07/2021 58
9 Marcador 2 30 13/08/2021 32
10 Tesoura 1 60 13/08/2021 vinte

Nota: Usar Small 's' na consulta acima também fornecerá a mesma saída.