logo

TIME Tip podatkov v SQL

  • V SQL obstaja veliko scenarijev, ko morate čas shraniti v tabele SQL vaše zbirke podatkov.
  • Če želite shraniti čas v svoje tabele SQL, bi moral biti vaš prvi korak, da ustvarite stolpec v tabeli, ki lahko shrani čas.
  • Če želite, da je čas shranjen v stolpcu tabele, morate ustvariti stolpec s podatkovnim tipom ČAS.
  • Podatkovni tip TIME privzeto shranjuje čas v formatu 'HH:MM:SS'.
  • Z uporabo stavka SELECT v SQL lahko pridobite čas iz stolpca tabel SQL.
  • Poleg pridobivanja časa v privzetem formatu, v katerem je shranjen, obstaja funkcija TIME_FORMAT () v SQL, s katero je mogoče čas pridobiti v bolj berljivi obliki.
  • Čas lahko pridobite v privzetem formatu, v katerem je shranjen v tabeli, tj. 'HH:MM:SS', ali pa imate tudi možnost pridobitve določenih delov časa, kot so ure, minute in sekunde. tako, da izberemo ustrezen parameter glede na naše zahteve in ga posredujemo funkciji TIME_FORMAT(). Čas je mogoče pridobiti tudi v 12-urnem in 24-urnem formatu.
  • Natisnemo lahko tudi čas, ki mu sledi AM/PM.

Oglejmo si nekaj praktičnih primerov, da bomo ta koncept bolj jasno razumeli. Za pisanje vseh poizvedb bomo uporabili bazo MySQL.

Za izdelavo tabele v bazi podatkov bomo najprej izbrali bazo podatkov, v kateri želimo ustvariti tabelo.

 mysql> USE dbs; 

Nato bomo napisali naslednjo poizvedbo za ustvarjanje tabele:

 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 podatkov v SQL

V zgornji poizvedbi bo stolpec z imenom ItemOrderTime shranil čas, saj je podatkovni tip tega stolpca nastavljen na »TIME«.

Zdaj bomo napisali poizvedbo za vstavljanje zapisov v tabelo items_tbl.

vadnica za java swing
 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 podatkov v SQL

Izvedli bomo poizvedbo SELECT, da preverimo, ali so vsi zapisi uspešno vstavljeni v tabelo items_tbl.

 mysql> SELECT *FROM items_tbl; 

ID Ime izdelka Artikel_Količina Item_Price Item_OrderDate Item_OrderTime
1 Milo 5 200 2021-07-08 04:13:52
2 Zobna pasta 2 80 2021-07-10 18:09:01
3 Pero 10 petdeset 2021-07-12 12:00:02
4 Steklenička 1 250 2021-07-13 15:07:05
5 Čopič 3 90 2021-07-15 19:18:43
6 Beležnice 10 1000 2021-07-26 05:05:05
7 Robec 3 100 2021-07-28 10:08:12
8 Paket čipsa 5 petdeset 2021-07-30 08:16:58
9 Marker 2 30 2021-08-13 02:18:32
10 Škarje 1 60 2021-08-13 07:17:30

Zgornji rezultati poizvedbe kažejo, da je čas pridobljen v privzetem formatu, v katerem je shranjen, tj. 'HH:MM:SS'.

Primer 1:

Napišite poizvedbo za pridobitev vseh vrednosti iz item_tbl in časa naročila elementov v 12-urni obliki skupaj z AM/PM, da pridobite časovne vrednosti v bolj berljivi obliki.

poizvedba:

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

Tukaj je funkcija TIME_FORMAT() uporabljena za Item_OrderTime s parametrom '%r' za tiskanje časa v 12-urnem formatu, ki mu sledi AM/PM.

Kot rezultat boste dobili naslednjo tabelo:

ID Ime izdelka Artikel_Količina Item_Price Item_OrderDate Item_OrderTime
1 Milo 5 200 2021-07-08 04:13:52 zjutraj
2 Zobna pasta 2 80 2021-07-10 18:09:01
3 Pero 10 petdeset 2021-07-12 12.00.02
4 Steklenička 1 250 2021-07-13 15:07:05
5 Čopič 3 90 2021-07-15 19:18:43
6 Beležnice 10 1000 2021-07-26 05:05:05 zjutraj
7 Robec 3 100 2021-07-28 10:08:12 zjutraj
8 Paket čipsa 5 petdeset 2021-07-30 08:16:58 zjutraj
9 Marker 2 30 2021-08-13 02:18:32 zjutraj
10 Škarje 1 60 2021-08-13 07:17:30 zjutraj

Primer 2:

Napišite poizvedbo za pridobitev vseh vrednosti iz item_tbl in časa naročila elementov v 12-urni obliki skupaj z AM/PM, da pridobite časovne vrednosti v bolj berljivi obliki.

poizvedba:

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

Tukaj je funkcija TIME_FORMAT () uporabljena za Item_OrderTime s parametrom '%T %p'. '%T' bo natisnil čas v 24-urnem formatu, '%p' pa bo 24-urnemu formatiranemu času dodal AM/PM.

Kot rezultat boste dobili naslednjo tabelo:

ID Ime izdelka Artikel_Količina Item_Price Item_OrderDate Item_OrderTime
1 Milo 5 200 2021-07-08 04:13:52 zjutraj
2 Zobna pasta 2 80 2021-07-10 18:09:01 zvečer
3 Pero 10 petdeset 2021-07-12 12.00.02
4 Steklenička 1 250 2021-07-13 15:07:05 popoldan
5 Čopič 3 90 2021-07-15 19:18:43 zvečer
6 Beležnice 10 1000 2021-07-26 05:05:05 zjutraj
7 Robec 3 100 2021-07-28 10:08:12 zjutraj
8 Paket čipsa 5 petdeset 2021-07-30 08:16:58 zjutraj
9 Marker 2 30 2021-08-13 02:18:32 zjutraj
10 Škarje 1 60 2021-08-13 07:17:30 zjutraj

Primer 3:

Napišite poizvedbo za pridobitev vseh vrednosti iz item_tbl in samo ure naročila artiklov iz celotnega časa naročila v 24-urni obliki.

poizvedba:

razvrščanje tulp python
 mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%H') AS Item_OrderHour FROM items_tbl; 

Tukaj je funkcija TIME_FORMAT () uporabljena za Item_OrderTime s parametrom '%H' za natančno tiskanje ure, ob kateri je artikel naročen. Veliko H pomeni, da bo ura natisnjena v 24-urnem formatu.

Kot rezultat boste dobili naslednjo tabelo:

ID Ime izdelka Artikel_Količina Item_Price Item_OrderDate Item_OrderHour
1 Milo 5 200 2021-07-08 04
2 Zobna pasta 2 80 2021-07-10 18
3 Pero 10 petdeset 2021-07-12 12
4 Steklenička 1 250 2021-07-13 petnajst
5 Čopič 3 90 2021-07-15 19
6 Beležnice 10 1000 2021-07-26 05
7 Robec 3 100 2021-07-28 10
8 Paket čipsa 5 petdeset 2021-07-30 08
9 Marker 2 30 2021-08-13 02
10 Škarje 1 60 2021-08-13 07

Primer 4:

Napišite poizvedbo za pridobitev vseh vrednosti iz item_tbl in samo ure naročila artiklov iz celotnega časa naročila v 12-urni obliki.

poizvedba:

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

Tukaj je funkcija TIME_FORMAT () uporabljena za Item_OrderTime s parametrom '%h', da natisne točno uro, ob kateri je artikel naročen. Mali 'h' pomeni, da bo ura natisnjena v 12-urnem formatu.

Kot rezultat boste dobili naslednjo tabelo:

prenesite videoposnetke youtube na vlc
ID Ime izdelka Artikel_Količina Item_Price Item_OrderDate Item_OrderHour
1 Milo 5 200 2021-07-08 04
2 Zobna pasta 2 80 2021-07-10 6
3 Pero 10 petdeset 2021-07-12 12
4 Steklenička 1 250 2021-07-13 03
5 Čopič 3 90 2021-07-15 07
6 Beležnice 10 1000 2021-07-26 05
7 Robec 3 100 2021-07-28 10
8 Paket čipsa 5 petdeset 2021-07-30 08
9 Marker 2 30 2021-08-13 02
10 Škarje 1 60 2021-08-13 07

Primer 5:

Napišite poizvedbo, da pridobite vse vrednosti iz item_tbl in samo minuto, ko je artikel naročen iz celotnega časa naročila.

poizvedba:

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

Tu je funkcija TIME_FORMAT () uporabljena za Item_OrderTime s parametrom '%i', da natisne natančno minuto, ko je artikel naročen. Mali 'i' pomeni, da bo natisnjena minuta iz celotnega 'Item_OrderTime'.

Kot rezultat boste dobili naslednjo tabelo:

ID Ime izdelka Artikel_Količina Item_Price Item_OrderDate Item_OrderMinute
1 Milo 5 200 2021-07-08 13
2 Zobna pasta 2 80 2021-07-10 09
3 Pero 10 petdeset 2021-07-12 00
4 Steklenička 1 250 2021-07-13 07
5 Čopič 3 90 2021-07-15 18
6 Beležnice 10 1000 2021-07-26 05
7 Robec 3 100 2021-07-28 08
8 Paket čipsa 5 petdeset 2021-07-30 16
9 Marker 2 30 2021-08-13 18
10 Škarje 1 60 2021-08-13 17

Primer 6:

Napišite poizvedbo za pridobitev vseh vrednosti iz item_tbl in samo sekund, v katerih je artikel naročen iz celotnega časa naročila.

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

Tukaj je funkcija TIME_FORMAT () uporabljena za Item_OrderTime s parametrom '%S' za natis točno sekund, ko je artikel naročen. Velika črka 'S' pomeni, da bo natisnjena minuta iz celotnega 'Item_OrderTime'.

statična ključna beseda v Javi

Kot rezultat boste dobili naslednjo tabelo:

ID Ime izdelka Artikel_Količina Item_Price Item_OrderDate Item_Order_Seconds
1 Milo 5 200 2021-07-08 52
2 Zobna pasta 2 80 2021-07-10 01
3 Pero 10 petdeset 2021-07-12 02
4 Steklenička 1 250 2021-07-13 05
5 Čopič 3 90 2021-07-15 43
6 Beležnice 10 1000 2021-07-26 05
7 Robec 3 100 2021-07-28 12
8 Paket čipsa 5 petdeset 2021-07-30 58
9 Marker 2 30 2021-08-13 32
10 Škarje 1 60 2021-08-13 dvajset

Opomba: uporaba majhnih 's' v zgornji poizvedbi bo prav tako dala enak rezultat.