- Der er mange scenarier i SQL, når du skal gemme tiden i SQL-tabellerne i din database.
- For at gemme tiden i dine SQL-tabeller, bør dit første skridt være at oprette en kolonne i din tabel, som er i stand til at gemme tiden.
- Hvis du ønsker, at tiden skal lagres i kolonnen i din tabel, skal du oprette en kolonne med datatypen TIME.
- TIME-datatypen gemmer som standard tiden i 'TT:MM:SS'-format.
- Ved at bruge SELECT-sætningen i SQL kan du hente tiden fra kolonnen i SQL-tabellerne.
- Ud over at hente tiden i standardformatet, som den er gemt i, er der en TIME_FORMAT () funktion i SQL, hvorved tiden kan hentes i et mere læsbart format.
- Du kan hente tiden i standardformatet, som den er gemt i i tabellen, dvs. 'TT:MM:SS', eller du har også mulighed for at hente de specifikke dele af tiden som time, minut og sekunder ved at vælge en passende parameter i henhold til vores krav og videregive den til funktionen TIME_FORMAT(). Tiden kan også hentes i et 12-timers og et 24-timers format.
- Vi kan også printe tiden efterfulgt af AM/PM.
Lad os se nogle få praktiske eksempler for at forstå dette koncept mere klart. Vi vil bruge MySQL-databasen til at skrive alle forespørgslerne.
For at oprette en tabel i databasen, vælger vi først en database, hvori vi vil oprette en tabel.
mysql> USE dbs;
Derefter vil vi skrive følgende forespørgsel for at oprette en tabel:
mysql> CREATE TABLE items_tbl(ID INT, Item_Name VARCHAR(20), Item_Quantity INT, Item_Price INT, Item_OrderDate DATE, Item_OrderTime TIME);
I ovenstående forespørgsel vil kolonnen ved navn ItemOrderTime gemme tiden, siden datatypen for denne kolonne er angivet som 'TIME'.
Nu vil vi skrive en forespørgsel for at indsætte poster i tabellen items_tbl.
: i 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');
Vi udfører SELECT-forespørgslen for at bekræfte, at alle posterne er indsat korrekt i tabellen items_tbl.
mysql> SELECT *FROM items_tbl;
ID | Tingens navn | Item_Quantity | Vare_Pris | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Sæbe | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Tandpasta | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Pen | 10 | halvtreds | 2021-07-12 | 12:00:02 |
4 | Flaske | 1 | 250 | 2021-07-13 | 15:07:05 |
5 | Børste | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | Notesbøger | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | Lommetørklæde | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Chips pakke | 5 | halvtreds | 2021-07-30 | 08:16:58 |
9 | Markør | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Saks | 1 | 60 | 2021-08-13 | 07:17:30 |
Ovenstående forespørgselsresultater viser, at klokkeslættet er hentet i standardformatet, som det er gemt i, dvs. 'TT:MM:SS'.
Eksempel 1:
Skriv en forespørgsel for at hente alle værdierne fra item_tbl og ordretiden for varer i et 12-timers format sammen med AM/PM for at hente tidsværdierne i et mere læsbart format.
dynamisk array i java
Forespørgsel:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%r') AS Formatted_Time FROM items_tbl;
Her anvendes funktionen TIME_FORMAT() på Item_OrderTime med parameteren '%r' for at udskrive tiden i 12-timers format efterfulgt af AM/PM.
Du får følgende tabel som output:
ID | Tingens navn | Item_Quantity | Vare_Pris | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Sæbe | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Tandpasta | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Pen | 10 | halvtreds | 2021-07-12 | 12:00:02 |
4 | Flaske | 1 | 250 | 2021-07-13 | 03:07:05 PM |
5 | Børste | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | Notesbøger | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | Lommetørklæde | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Chips pakke | 5 | halvtreds | 2021-07-30 | 08:16:58 |
9 | Markør | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Saks | 1 | 60 | 2021-08-13 | 07:17:30 |
Eksempel 2:
Skriv en forespørgsel for at hente alle værdierne fra item_tbl og ordretiden for varer i et 12-timers format sammen med AM/PM for at hente tidsværdierne i et mere læsbart format.
Forespørgsel:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%T %p') AS Formatted_Time FROM items_tbl;
Her anvendes funktionen TIME_FORMAT () på Item_OrderTime med parameteren '%T %p'. '%T' vil udskrive tiden i 24-timers format, og '%p' vil tilføje AM/PM til den 24-timers formaterede tid.
Du får følgende tabel som output:
skuespillerinde zeenat aman
ID | Tingens navn | Item_Quantity | Vare_Pris | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Sæbe | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Tandpasta | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Pen | 10 | halvtreds | 2021-07-12 | 12:00:02 |
4 | Flaske | 1 | 250 | 2021-07-13 | 15:07:05 |
5 | Børste | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | Notesbøger | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | Lommetørklæde | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Chips pakke | 5 | halvtreds | 2021-07-30 | 08:16:58 |
9 | Markør | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Saks | 1 | 60 | 2021-08-13 | 07:17:30 |
Eksempel 3:
Skriv en forespørgsel for at hente alle værdierne fra item_tbl og kun ordretimen for varer fra hele ordretiden i et 24-timers format.
Forespørgsel:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%H') AS Item_OrderHour FROM items_tbl;
Her anvendes funktionen TIME_FORMAT () på Item_OrderTime med parameteren '%H' for specifikt at udskrive den time, hvor varen er bestilt. Stort H angiver, at timen vil blive udskrevet i 24-timers format.
Du får følgende tabel som output:
ID | Tingens navn | Item_Quantity | Vare_Pris | Item_OrderDate | Item_OrderHour |
---|---|---|---|---|---|
1 | Sæbe | 5 | 200 | 2021-07-08 | 04 |
2 | Tandpasta | 2 | 80 | 2021-07-10 | 18 |
3 | Pen | 10 | halvtreds | 2021-07-12 | 12 |
4 | Flaske | 1 | 250 | 2021-07-13 | femten |
5 | Børste | 3 | 90 | 2021-07-15 | 19 |
6 | Notesbøger | 10 | 1000 | 2021-07-26 | 05 |
7 | Lommetørklæde | 3 | 100 | 2021-07-28 | 10 |
8 | Chips pakke | 5 | halvtreds | 2021-07-30 | 08 |
9 | Markør | 2 | 30 | 2021-08-13 | 02 |
10 | Saks | 1 | 60 | 2021-08-13 | 07 |
Eksempel 4:
Skriv en forespørgsel for at hente alle værdierne fra item_tbl og kun ordretimen for varer fra hele ordretiden i et 12-timers format.
Forespørgsel:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%h') AS Item_OrderHour FROM items_tbl;
Her anvendes funktionen TIME_FORMAT () på Item_OrderTime med parameteren '%h' for specifikt at udskrive den time, hvor varen er bestilt. Lille 'h' angiver, at timen vil blive udskrevet i et 12-timers format.
Du får følgende tabel som output:
industri og fabrik
ID | Tingens navn | Item_Quantity | Vare_Pris | Item_OrderDate | Item_OrderHour |
---|---|---|---|---|---|
1 | Sæbe | 5 | 200 | 2021-07-08 | 04 |
2 | Tandpasta | 2 | 80 | 2021-07-10 | 6 |
3 | Pen | 10 | halvtreds | 2021-07-12 | 12 |
4 | Flaske | 1 | 250 | 2021-07-13 | 03 |
5 | Børste | 3 | 90 | 2021-07-15 | 07 |
6 | Notesbøger | 10 | 1000 | 2021-07-26 | 05 |
7 | Lommetørklæde | 3 | 100 | 2021-07-28 | 10 |
8 | Chips pakke | 5 | halvtreds | 2021-07-30 | 08 |
9 | Markør | 2 | 30 | 2021-08-13 | 02 |
10 | Saks | 1 | 60 | 2021-08-13 | 07 |
Eksempel 5:
Skriv en forespørgsel for at hente alle værdierne fra item_tbl og kun det minut, hvor en vare er bestilt fra hele ordretiden.
Forespørgsel:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%i') AS Item_OrderMinute FROM items_tbl;
Her anvendes funktionen TIME_FORMAT () på Item_OrderTime med parameteren '%i' for specifikt at udskrive det minut, hvor varen er bestilt. Lille 'i' angiver, at minuttet fra hele 'Item_OrderTime' vil blive udskrevet.
Du får følgende tabel som output:
pandaer og numpy
ID | Tingens navn | Item_Quantity | Vare_Pris | Item_OrderDate | Item_OrderMinute |
---|---|---|---|---|---|
1 | Sæbe | 5 | 200 | 2021-07-08 | 13 |
2 | Tandpasta | 2 | 80 | 2021-07-10 | 09 |
3 | Pen | 10 | halvtreds | 2021-07-12 | 00 |
4 | Flaske | 1 | 250 | 2021-07-13 | 07 |
5 | Børste | 3 | 90 | 2021-07-15 | 18 |
6 | Notesbøger | 10 | 1000 | 2021-07-26 | 05 |
7 | Lommetørklæde | 3 | 100 | 2021-07-28 | 08 |
8 | Chips pakke | 5 | halvtreds | 2021-07-30 | 16 |
9 | Markør | 2 | 30 | 2021-08-13 | 18 |
10 | Saks | 1 | 60 | 2021-08-13 | 17 |
Eksempel 6:
Skriv en forespørgsel for at hente alle værdierne fra item_tbl og kun de sekunder, hvor en vare er bestilt fra hele ordretiden.
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%S') AS Item_OrderSeconds FROM items_tbl;
Her anvendes funktionen TIME_FORMAT () på Item_OrderTime med parameteren '%S' for specifikt at udskrive de sekunder, hvor varen er bestilt. Stort 'S' angiver, at minuttet fra hele 'Item_OrderTime' vil blive udskrevet.
Du får følgende tabel som output:
ID | Tingens navn | Item_Quantity | Vare_Pris | Item_OrderDate | Item_Order_Seconds |
---|---|---|---|---|---|
1 | Sæbe | 5 | 200 | 2021-07-08 | 52 |
2 | Tandpasta | 2 | 80 | 2021-07-10 | 01 |
3 | Pen | 10 | halvtreds | 2021-07-12 | 02 |
4 | Flaske | 1 | 250 | 2021-07-13 | 05 |
5 | Børste | 3 | 90 | 2021-07-15 | 43 |
6 | Notesbøger | 10 | 1000 | 2021-07-26 | 05 |
7 | Lommetørklæde | 3 | 100 | 2021-07-28 | 12 |
8 | Chips pakke | 5 | halvtreds | 2021-07-30 | 58 |
9 | Markør | 2 | 30 | 2021-08-13 | 32 |
10 | Saks | 1 | 60 | 2021-08-13 | tyve |