logo

TIME Tip de date în SQL

  • Există multe scenarii în SQL când trebuie să stocați timpul în tabelele SQL ale bazei de date.
  • Pentru a stoca ora în tabelele dvs. SQL, primul pas ar trebui să fie să creați o coloană în tabel care să fie capabilă să stocheze timpul.
  • Dacă doriți ca ora să fie stocată în coloana tabelului dvs., trebuie să creați o coloană cu tipul de date TIME.
  • Tipul de date TIME stochează în mod implicit ora în format „HH:MM:SS”.
  • Folosind instrucțiunea SELECT în SQL, puteți prelua ora din coloana tabelelor SQL.
  • Pe lângă preluarea orei în formatul implicit în care este stocată, există o funcție TIME_FORMAT () în SQL, cu ajutorul căreia ora poate fi recuperată într-un format mai lizibil.
  • Puteți prelua ora în formatul implicit în care este stocată în tabel, adică „HH:MM:SS”, sau aveți, de asemenea, opțiunea de a prelua anumite părți ale timpului, cum ar fi ora, minutul și secundele. prin alegerea unui parametru adecvat conform cerințelor noastre și trecerea acestuia la funcția TIME_FORMAT(). Ora poate fi preluată și în format de 12 ore și 24 de ore.
  • De asemenea, putem imprima ora urmată de AM/PM.

Să vedem câteva exemple practice pentru a înțelege mai clar acest concept. Vom folosi baza de date MySQL pentru a scrie toate interogările.

Pentru a crea un tabel în baza de date, vom selecta mai întâi o bază de date în care dorim să creăm un tabel.

 mysql> USE dbs; 

Apoi vom scrie următoarea interogare pentru a crea un tabel:

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

TIME Tip de date în SQL

În interogarea de mai sus, coloana numită ItemOrderTime va stoca timpul de când tipul de date al acestei coloane este setat ca „TIME”.

Acum, vom scrie o interogare pentru a insera înregistrări în tabelul items_tbl.

șir de comparare 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'); 

TIME Tip de date în SQL

Vom executa interogarea SELECT pentru a verifica dacă toate înregistrările sunt introduse cu succes în tabelul items_tbl.

 mysql> SELECT *FROM items_tbl; 

ID Item_Nume Item_Quantity Pretul articolului Item_OrderDate Item_OrderTime
1 Săpun 5 200 2021-07-08 04:13:52
2 Pastă de dinţi 2 80 2021-07-10 18:09:01
3 Pix 10 cincizeci 2021-07-12 12:00:02
4 Sticla 1 250 2021-07-13 15:07:05
5 Perie 3 90 2021-07-15 19:18:43
6 Caiete 10 1000 26-07-2021 05:05:05
7 Batistă 3 100 28-07-2021 10:08:12
8 Pachetul de chipsuri 5 cincizeci 30-07-2021 08:16:58
9 Marker 2 30 13-08-2021 02:18:32
10 Foarfece 1 60 13-08-2021 07:17:30

Rezultatele interogării de mai sus arată că ora este preluată în formatul implicit în care este stocată, adică „HH:MM:SS”.

Exemplul 1:

Scrieți o interogare pentru a prelua toate valorile din item_tbl și ora de comandă a articolelor într-un format de 12 ore împreună cu AM/PM pentru a prelua valorile orei într-un format mai lizibil.

salut lumea java

Interogare:

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

Aici, funcția TIME_FORMAT() este aplicată pe Item_OrderTime cu parametrul „%r” pentru a imprima ora în format de 12 ore, urmată de AM/PM.

Veți obține următorul tabel ca rezultat:

ID Item_Nume Item_Quantity Pretul articolului Item_OrderDate Item_OrderTime
1 Săpun 5 200 2021-07-08 04:13:52 AM
2 Pastă de dinţi 2 80 2021-07-10 18:09:01
3 Pix 10 cincizeci 2021-07-12 12:00:02 PM
4 Sticla 1 250 2021-07-13 03:07:05 PM
5 Perie 3 90 2021-07-15 19:18:43
6 Caiete 10 1000 26-07-2021 05:05:05 AM
7 Batistă 3 100 28-07-2021 10:08:12 AM
8 Pachetul de chipsuri 5 cincizeci 30-07-2021 08:16:58 AM
9 Marker 2 30 13-08-2021 02:18:32 AM
10 Foarfece 1 60 13-08-2021 07:17:30

Exemplul 2:

Scrieți o interogare pentru a prelua toate valorile din item_tbl și ora de comandă a articolelor într-un format de 12 ore împreună cu AM/PM pentru a prelua valorile orei într-un format mai lizibil.

Interogare:

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

Aici, funcția TIME_FORMAT () este aplicată pe Item_OrderTime cu parametrul „%T %p”. „%T” va imprima ora în format de 24 de ore, iar „%p” va adăuga AM/PM la ora formatată de 24 de ore.

Veți obține următorul tabel ca rezultat:

conversie șir în int în java
ID Item_Nume Item_Quantity Pretul articolului Item_OrderDate Item_OrderTime
1 Săpun 5 200 2021-07-08 04:13:52 AM
2 Pastă de dinţi 2 80 2021-07-10 18:09:01 PM
3 Pix 10 cincizeci 2021-07-12 12:00:02 PM
4 Sticla 1 250 2021-07-13 15:07:05 PM
5 Perie 3 90 2021-07-15 19:18:43 PM
6 Caiete 10 1000 26-07-2021 05:05:05 AM
7 Batistă 3 100 28-07-2021 10:08:12 AM
8 Pachetul de chipsuri 5 cincizeci 30-07-2021 08:16:58 AM
9 Marker 2 30 13-08-2021 02:18:32 AM
10 Foarfece 1 60 13-08-2021 07:17:30

Exemplul 3:

Scrieți o interogare pentru a prelua toate valorile din item_tbl și numai ora de comandă a articolelor din întreaga oră de comandă într-un format de 24 de ore.

Interogare:

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

Aici, funcția TIME_FORMAT () este aplicată pe Item_OrderTime cu parametrul „%H” pentru a tipări în mod specific ora la care articolul este comandat. H majuscul indică faptul că ora va fi tipărită în format de 24 de ore.

Veți obține următorul tabel ca rezultat:

ID Item_Nume Item_Quantity Pretul articolului Item_OrderDate Item_OrderHour
1 Săpun 5 200 2021-07-08 04
2 Pastă de dinţi 2 80 2021-07-10 18
3 Pix 10 cincizeci 2021-07-12 12
4 Sticla 1 250 2021-07-13 cincisprezece
5 Perie 3 90 2021-07-15 19
6 Caiete 10 1000 26-07-2021 05
7 Batistă 3 100 28-07-2021 10
8 Pachetul de chipsuri 5 cincizeci 30-07-2021 08
9 Marker 2 30 13-08-2021 02
10 Foarfece 1 60 13-08-2021 07

Exemplul 4:

Scrieți o interogare pentru a prelua toate valorile din item_tbl și numai ora de comandă a articolelor din întreaga oră de comandă într-un format de 12 ore.

Interogare:

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

Aici, funcția TIME_FORMAT () este aplicată pe Item_OrderTime cu parametrul „%h” pentru a tipări în mod specific ora la care articolul este comandat. „h” mic indică faptul că ora va fi tipărită într-un format de 12 ore.

Veți obține următorul tabel ca rezultat:

cum se transformă char în șir
ID Item_Nume Item_Quantity Pretul articolului Item_OrderDate Item_OrderHour
1 Săpun 5 200 2021-07-08 04
2 Pastă de dinţi 2 80 2021-07-10 6
3 Pix 10 cincizeci 2021-07-12 12
4 Sticla 1 250 2021-07-13 03
5 Perie 3 90 2021-07-15 07
6 Caiete 10 1000 26-07-2021 05
7 Batistă 3 100 28-07-2021 10
8 Pachetul de chipsuri 5 cincizeci 30-07-2021 08
9 Marker 2 30 13-08-2021 02
10 Foarfece 1 60 13-08-2021 07

Exemplul 5:

Scrieți o interogare pentru a prelua toate valorile din item_tbl și doar minutul la care un articol este comandat din întreg timpul de comandă.

Interogare:

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

Aici, funcția TIME_FORMAT () este aplicată pe Item_OrderTime cu parametrul „%i” pentru a imprima în mod specific minutul la care articolul este comandat. „i” mic indică faptul că minutul din întregul „Item_OrderTime” va fi tipărit.

Veți obține următorul tabel ca rezultat:

identificatori validi în java
ID Item_Nume Item_Quantity Pretul articolului Item_OrderDate Item_OrderMinute
1 Săpun 5 200 2021-07-08 13
2 Pastă de dinţi 2 80 2021-07-10 09
3 Pix 10 cincizeci 2021-07-12 00
4 Sticla 1 250 2021-07-13 07
5 Perie 3 90 2021-07-15 18
6 Caiete 10 1000 26-07-2021 05
7 Batistă 3 100 28-07-2021 08
8 Pachetul de chipsuri 5 cincizeci 30-07-2021 16
9 Marker 2 30 13-08-2021 18
10 Foarfece 1 60 13-08-2021 17

Exemplul 6:

Scrieți o interogare pentru a prelua toate valorile din item_tbl și numai secundele în care un articol este comandat din întreg timpul de comandă.

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

Aici, funcția TIME_FORMAT () este aplicată pe Item_OrderTime cu parametrul „%S” pentru a imprima în mod specific secundele la care articolul este comandat. „S” majuscul indică faptul că minutul din întregul „Item_OrderTime” va fi tipărit.

Veți obține următorul tabel ca rezultat:

ID Item_Nume Item_Quantity Pretul articolului Item_OrderDate Item_Order_Seconds
1 Săpun 5 200 2021-07-08 52
2 Pastă de dinţi 2 80 2021-07-10 01
3 Pix 10 cincizeci 2021-07-12 02
4 Sticla 1 250 2021-07-13 05
5 Perie 3 90 2021-07-15 43
6 Caiete 10 1000 26-07-2021 05
7 Batistă 3 100 28-07-2021 12
8 Pachet de cipuri 5 cincizeci 30-07-2021 58
9 Marker 2 30 13-08-2021 32
10 Foarfece 1 60 13-08-2021 douăzeci

Notă: Folosind „s” mici în interogarea de mai sus va da, de asemenea, aceeași ieșire.