- Postoji mnogo scenarija u SQL-u kada trebate pohraniti vrijeme u SQL tablice vaše baze podataka.
- Da biste pohranili vrijeme u svoje SQL tablice, vaš prvi korak trebao bi biti stvaranje stupca u vašoj tablici koji može pohraniti vrijeme.
- Ako želite da vrijeme bude pohranjeno u stupcu vaše tablice, morate stvoriti stupac s tipom podataka VRIJEME.
- Tip podataka TIME prema zadanim postavkama pohranjuje vrijeme u formatu 'HH:MM:SS'.
- Koristeći naredbu SELECT u SQL-u, možete dohvatiti vrijeme iz stupca SQL tablica.
- Uz dohvaćanje vremena u zadanom formatu u kojem je pohranjeno, u SQL-u postoji funkcija TIME_FORMAT () pomoću koje se vrijeme može dohvatiti u čitljivijem formatu.
- Možete dohvatiti vrijeme u zadanom formatu u kojem je pohranjeno u tablici, tj. 'HH:MM:SS', ili također imate opciju dohvaćanja određenih dijelova vremena kao što su sat, minuta i sekunde odabirom odgovarajućeg parametra prema našim zahtjevima i prosljeđivanjem u funkciju TIME_FORMAT(). Vrijeme se također može dohvatiti u 12-satnom i 24-satnom formatu.
- Također možemo ispisati vrijeme nakon kojeg slijedi AM/PM.
Pogledajmo nekoliko praktičnih primjera kako bismo jasnije razumjeli ovaj koncept. Za pisanje svih upita koristit ćemo MySQL bazu podataka.
Za izradu tablice u bazi podataka prvo ćemo odabrati bazu podataka u kojoj želimo kreirati tablicu.
mysql> USE dbs;
Zatim ćemo napisati sljedeći upit za izradu tablice:
mysql> CREATE TABLE items_tbl(ID INT, Item_Name VARCHAR(20), Item_Quantity INT, Item_Price INT, Item_OrderDate DATE, Item_OrderTime TIME);
U gornjem upitu, stupac pod nazivom ItemOrderTime pohranit će vrijeme budući da je vrsta podataka ovog stupca postavljena kao 'TIME'.
Sada ćemo napisati upit za umetanje zapisa u tablicu items_tbl.
usporediti u nizu
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');
Izvršit ćemo upit SELECT kako bismo provjerili jesu li svi zapisi uspješno umetnuti u tablicu items_tbl.
mysql> SELECT *FROM items_tbl;
iskaznica | Ime proizvoda | Količina_artikla | Cijena_artikla | Stavka_Datum narudžbe | Item_OrderTime |
---|---|---|---|---|---|
1 | Sapun | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Pasta za zube | 2 | 80 | 2021-07-10 | 18:09:01 sati |
3 | Olovka | 10 | pedeset | 2021-07-12 | 12:00:02 |
4 | Boca | 1 | 250 | 2021-07-13 | 15:07:05 |
5 | Četka | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | Bilježnice | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | Rupčić | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Paket čipsa | 5 | pedeset | 2021-07-30 | 08:16:58 sati |
9 | Marker | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Škare | 1 | 60 | 2021-08-13 | 07:17:30 sati |
Gornji rezultati upita pokazuju da se vrijeme dohvaća u zadanom formatu u kojem je pohranjeno, tj. 'HH:MM:SS'.
Primjer 1:
Napišite upit za dohvaćanje svih vrijednosti iz item_tbl i vremena narudžbe stavki u 12-satnom formatu zajedno s AM/PM za dohvaćanje vremenskih vrijednosti u čitljivijem formatu.
Upit:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%r') AS Formatted_Time FROM items_tbl;
Ovdje se funkcija TIME_FORMAT() primjenjuje na Item_OrderTime s parametrom '%r' za ispis vremena u 12-satnom formatu nakon kojeg slijedi AM/PM.
Dobit ćete sljedeću tablicu kao izlaz:
int za char java
iskaznica | Ime proizvoda | Količina_artikla | Cijena_artikla | Stavka_Datum narudžbe | Item_OrderTime |
---|---|---|---|---|---|
1 | Sapun | 5 | 200 | 2021-07-08 | 04:13:52 ujutro |
2 | Pasta za zube | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Olovka | 10 | pedeset | 2021-07-12 | 12:00:02 popodne |
4 | Boca | 1 | 250 | 2021-07-13 | 15:07:05 |
5 | Četka | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | Bilježnice | 10 | 1000 | 2021-07-26 | 05:05:05 ujutro |
7 | Rupčić | 3 | 100 | 2021-07-28 | 10:08:12 ujutro |
8 | Paket čipsa | 5 | pedeset | 2021-07-30 | 08:16:58 ujutro |
9 | Marker | 2 | 30 | 2021-08-13 | 02:18:32 ujutro |
10 | Škare | 1 | 60 | 2021-08-13 | 07:17:30 ujutro |
Primjer 2:
Napišite upit za dohvaćanje svih vrijednosti iz item_tbl i vremena narudžbe stavki u 12-satnom formatu zajedno s AM/PM za dohvaćanje vremenskih vrijednosti u čitljivijem formatu.
Upit:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%T %p') AS Formatted_Time FROM items_tbl;
Ovdje se funkcija TIME_FORMAT () primjenjuje na Item_OrderTime s parametrom '%T %p'. '%T' će ispisati vrijeme u 24-satnom formatu, a '%p' će dodati AM/PM na 24-satno formatirano vrijeme.
Dobit ćete sljedeću tablicu kao izlaz:
iskaznica | Ime proizvoda | Količina_artikla | Cijena_artikla | Stavka_Datum narudžbe | Item_OrderTime |
---|---|---|---|---|---|
1 | Sapun | 5 | 200 | 2021-07-08 | 04:13:52 ujutro |
2 | Pasta za zube | 2 | 80 | 2021-07-10 | 18:09:01 sati |
3 | Olovka | 10 | pedeset | 2021-07-12 | 12:00:02 popodne |
4 | Boca | 1 | 250 | 2021-07-13 | 15:07:05 sati |
5 | Četka | 3 | 90 | 2021-07-15 | 19:18:43 sati |
6 | Bilježnice | 10 | 1000 | 2021-07-26 | 05:05:05 ujutro |
7 | Rupčić | 3 | 100 | 2021-07-28 | 10:08:12 ujutro |
8 | Paket čipsa | 5 | pedeset | 2021-07-30 | 08:16:58 ujutro |
9 | Marker | 2 | 30 | 2021-08-13 | 02:18:32 ujutro |
10 | Škare | 1 | 60 | 2021-08-13 | 07:17:30 ujutro |
Primjer 3:
Napišite upit za dohvaćanje svih vrijednosti iz item_tbl i samo sata narudžbe stavki iz cijelog vremena narudžbe u 24-satnom formatu.
odaberite kao
Upit:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%H') AS Item_OrderHour FROM items_tbl;
Ovdje se funkcija TIME_FORMAT () primjenjuje na Item_OrderTime s parametrom '%H' za ispis konkretnog sata u kojem je stavka naručena. Veliko H označava da će sat biti ispisan u 24-satnom formatu.
Dobit ćete sljedeću tablicu kao izlaz:
iskaznica | Ime proizvoda | Količina_artikla | Cijena_artikla | Stavka_Datum narudžbe | Item_OrderHour |
---|---|---|---|---|---|
1 | Sapun | 5 | 200 | 2021-07-08 | 04 |
2 | Pasta za zube | 2 | 80 | 2021-07-10 | 18 |
3 | Olovka | 10 | pedeset | 2021-07-12 | 12 |
4 | Boca | 1 | 250 | 2021-07-13 | petnaest |
5 | Četka | 3 | 90 | 2021-07-15 | 19 |
6 | Bilježnice | 10 | 1000 | 2021-07-26 | 05 |
7 | Rupčić | 3 | 100 | 2021-07-28 | 10 |
8 | Paket čipsa | 5 | pedeset | 2021-07-30 | 08 |
9 | Marker | 2 | 30 | 2021-08-13 | 02 |
10 | Škare | 1 | 60 | 2021-08-13 | 07 |
Primjer 4:
Napišite upit za dohvaćanje svih vrijednosti iz item_tbl i samo sata narudžbe stavki iz cijelog vremena narudžbe u 12-satnom formatu.
Upit:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%h') AS Item_OrderHour FROM items_tbl;
Ovdje se funkcija TIME_FORMAT () primjenjuje na Item_OrderTime s parametrom '%h' za ispis konkretnog sata u kojem je artikl naručen. Malo 'h' označava da će sat biti ispisan u 12-satnom formatu.
Dobit ćete sljedeću tablicu kao izlaz:
kako pretvoriti char u string
iskaznica | Ime proizvoda | Količina_artikla | Cijena_artikla | Stavka_Datum narudžbe | Item_OrderHour |
---|---|---|---|---|---|
1 | Sapun | 5 | 200 | 2021-07-08 | 04 |
2 | Pasta za zube | 2 | 80 | 2021-07-10 | 6 |
3 | Olovka | 10 | pedeset | 2021-07-12 | 12 |
4 | Boca | 1 | 250 | 2021-07-13 | 03 |
5 | Četka | 3 | 90 | 2021-07-15 | 07 |
6 | Bilježnice | 10 | 1000 | 2021-07-26 | 05 |
7 | Rupčić | 3 | 100 | 2021-07-28 | 10 |
8 | Paket čipsa | 5 | pedeset | 2021-07-30 | 08 |
9 | Marker | 2 | 30 | 2021-08-13 | 02 |
10 | Škare | 1 | 60 | 2021-08-13 | 07 |
Primjer 5:
Napišite upit za dohvaćanje svih vrijednosti iz item_tbl i samo minute u kojoj je artikl naručen iz cijelog vremena narudžbe.
Upit:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%i') AS Item_OrderMinute FROM items_tbl;
Ovdje se funkcija TIME_FORMAT () primjenjuje na Item_OrderTime s parametrom '%i' kako bi se točno ispisala minuta u kojoj je artikl naručen. Malo 'i' označava da će se ispisati minute iz cijelog 'Item_OrderTime'.
Dobit ćete sljedeću tablicu kao izlaz:
iskaznica | Ime proizvoda | Količina_artikla | Cijena_artikla | Stavka_Datum narudžbe | Item_OrderMinute |
---|---|---|---|---|---|
1 | Sapun | 5 | 200 | 2021-07-08 | 13 |
2 | Pasta za zube | 2 | 80 | 2021-07-10 | 09 |
3 | Olovka | 10 | pedeset | 2021-07-12 | 00 |
4 | Boca | 1 | 250 | 2021-07-13 | 07 |
5 | Četka | 3 | 90 | 2021-07-15 | 18 |
6 | Bilježnice | 10 | 1000 | 2021-07-26 | 05 |
7 | Rupčić | 3 | 100 | 2021-07-28 | 08 |
8 | Paket čipsa | 5 | pedeset | 2021-07-30 | 16 |
9 | Marker | 2 | 30 | 2021-08-13 | 18 |
10 | Škare | 1 | 60 | 2021-08-13 | 17 |
Primjer 6:
Napišite upit za dohvaćanje svih vrijednosti iz item_tbl i samo sekundi u kojima je artikl naručen iz cijelog vremena narudžbe.
java kodovi boja
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%S') AS Item_OrderSeconds FROM items_tbl;
Ovdje se funkcija TIME_FORMAT () primjenjuje na Item_OrderTime s parametrom '%S' za ispis specifičnih sekundi u kojima je stavka naručena. Veliko 'S' označava da će se ispisati minute iz cijelog 'Item_OrderTime'.
Dobit ćete sljedeću tablicu kao izlaz:
iskaznica | Ime proizvoda | Količina_artikla | Cijena_artikla | Stavka_Datum narudžbe | Stavka_narudžba_sekundi |
---|---|---|---|---|---|
1 | Sapun | 5 | 200 | 2021-07-08 | 52 |
2 | Pasta za zube | 2 | 80 | 2021-07-10 | 01 |
3 | Olovka | 10 | pedeset | 2021-07-12 | 02 |
4 | Boca | 1 | 250 | 2021-07-13 | 05 |
5 | Četka | 3 | 90 | 2021-07-15 | 43 |
6 | Bilježnice | 10 | 1000 | 2021-07-26 | 05 |
7 | Rupčić | 3 | 100 | 2021-07-28 | 12 |
8 | Paket čipsa | 5 | pedeset | 2021-07-30 | 58 |
9 | Marker | 2 | 30 | 2021-08-13 | 32 |
10 | Škare | 1 | 60 | 2021-08-13 | dvadeset |