- Az SQL-ben számos forgatókönyv létezik, amikor az időt az adatbázis SQL-táblázataiban kell tárolnia.
- Az idő tárolásához az SQL-táblázatokban az első lépés egy olyan oszlop létrehozása a táblában, amely képes tárolni az időt.
- Ha azt szeretné, hogy az időt a táblázat oszlopában tárolja, létre kell hoznia egy oszlopot a TIME adattípussal.
- A TIME adattípus alapértelmezés szerint 'ÓÓ:PP:SS' formátumban tárolja az időt.
- Az SQL-ben a SELECT utasítás használatával lekérheti az időt az SQL táblák oszlopából.
- Az idő alapértelmezett formátumban való lekérése mellett az SQL-ben van egy TIME_FORMAT () függvény, amellyel az idő olvashatóbb formátumban kérhető le.
- Lekérheti az időt a táblázatban tárolt alapértelmezett formátumban, azaz 'ÓÓ:PP:SS', vagy lehetősége van az idő meghatározott részei, például óra, perc és másodperc lekérésére is. úgy, hogy kiválasztunk egy megfelelő paramétert a követelményünknek megfelelően, és átadjuk a TIME_FORMAT() függvénynek. Az idő 12 órás és 24 órás formátumban is lekérhető.
- Kinyomtathatjuk az időt is, amelyet az AM/ PM követ.
Lássunk néhány gyakorlati példát ennek a fogalomnak a pontosabb megértéséhez. Az összes lekérdezés írásához a MySQL adatbázist fogjuk használni.
Tábla létrehozásához az adatbázisban először kiválasztunk egy adatbázist, amelyben táblát szeretnénk létrehozni.
mysql> USE dbs;
Ezután a következő lekérdezést írjuk egy táblázat létrehozásához:
mysql> CREATE TABLE items_tbl(ID INT, Item_Name VARCHAR(20), Item_Quantity INT, Item_Price INT, Item_OrderDate DATE, Item_OrderTime TIME);
A fenti lekérdezésben az ItemOrderTime nevű oszlop tárolja azt az időt, amióta ennek az oszlopnak az adattípusa 'TIME'-re van beállítva.
Most írunk egy lekérdezést a rekordok beszúrásához az items_tbl táblába.
java aktuális dátumot kap
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');
A SELECT lekérdezést végrehajtjuk annak ellenőrzésére, hogy az összes rekord sikeresen bekerült-e az items_tbl táblába.
mysql> SELECT *FROM items_tbl;
ID | Termék név | Item_Quantity | Darab ár | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Szappan | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Fogkrém | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Toll | 10 | ötven | 2021-07-12 | 12:00:02 |
4 | Üveg | 1 | 250 | 2021-07-13 | 15:07:05 |
5 | Kefe | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | Jegyzetfüzetek | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | Zsebkendő | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Chips csomag | 5 | ötven | 2021-07-30 | 08:16:58 |
9 | Jelző | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Olló | 1 | 60 | 2021-08-13 | 07:17:30 |
A fenti lekérdezési eredmények azt mutatják, hogy az idő az alapértelmezett formátumban, amelyben tárolva van, azaz „ÓÓ:PP:SS”.
1. példa:
hogyan lehet letiltani a fejlesztői módot
Írjon egy lekérdezést az item_tbl összes értékének és a tételek rendelési idejének lekéréséhez 12 órás formátumban, az AM/PM mellett, hogy az időértékeket olvashatóbb formátumban kérje le.
Lekérdezés:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%r') AS Formatted_Time FROM items_tbl;
Itt a TIME_FORMAT() függvény kerül alkalmazásra az Item_OrderTime '%r' paraméterrel az idő 12 órás formátumban történő kinyomtatásához, amelyet az AM/PM követ.
A következő táblázatot kapod kimenetként:
ID | Termék név | Item_Quantity | Darab ár | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Szappan | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Fogkrém | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Toll | 10 | ötven | 2021-07-12 | 12:00:02 PM |
4 | Üveg | 1 | 250 | 2021-07-13 | 03:07:05 PM |
5 | Kefe | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | Jegyzetfüzetek | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | Zsebkendő | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Chips csomag | 5 | ötven | 2021-07-30 | 08:16:58 |
9 | Jelző | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Olló | 1 | 60 | 2021-08-13 | 07:17:30 |
2. példa:
Írjon egy lekérdezést az item_tbl összes értékének és a tételek rendelési idejének lekéréséhez 12 órás formátumban, az AM/PM mellett, hogy az időértékeket olvashatóbb formátumban kérje le.
Lekérdezés:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%T %p') AS Formatted_Time FROM items_tbl;
Itt a TIME_FORMAT () függvény kerül alkalmazásra az Item_OrderTime-on a '%T %p' paraméterrel. A '%T' 24 órás formátumban nyomtatja ki az időt, a '%p' pedig hozzáadja az AM/PM értéket a 24 órás formázott időhöz.
A következő táblázatot kapod kimenetként:
ID | Termék név | Item_Quantity | Darab ár | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Szappan | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Fogkrém | 2 | 80 | 2021-07-10 | 18:09:01 PM |
3 | Toll | 10 | ötven | 2021-07-12 | 12:00:02 PM |
4 | Üveg | 1 | 250 | 2021-07-13 | 15:07:05 PM |
5 | Kefe | 3 | 90 | 2021-07-15 | 19:18:43 PM |
6 | Jegyzetfüzetek | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | Zsebkendő | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Chips csomag | 5 | ötven | 2021-07-30 | 08:16:58 |
9 | Jelző | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Olló | 1 | 60 | 2021-08-13 | 07:17:30 |
3. példa:
Írjon lekérdezést, hogy lekérje az item_tbl összes értékét, és csak a tételek rendelési óráját a teljes rendelési időből 24 órás formátumban.
Lekérdezés:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%H') AS Item_OrderHour FROM items_tbl;
Itt a TIME_FORMAT () függvény kerül alkalmazásra az Item_OrderTime paraméterben a „%H” paraméterrel, hogy kinyomtassa azt az órát, amikor a cikk megrendelésre kerül. A nagy H azt jelenti, hogy az óra 24 órás formátumban kerül nyomtatásra.
hoszt linux
A következő táblázatot kapod kimenetként:
ID | Termék név | Item_Quantity | Darab ár | Item_OrderDate | Item_OrderHour |
---|---|---|---|---|---|
1 | Szappan | 5 | 200 | 2021-07-08 | 04 |
2 | Fogkrém | 2 | 80 | 2021-07-10 | 18 |
3 | Toll | 10 | ötven | 2021-07-12 | 12 |
4 | Üveg | 1 | 250 | 2021-07-13 | tizenöt |
5 | Kefe | 3 | 90 | 2021-07-15 | 19 |
6 | Jegyzetfüzetek | 10 | 1000 | 2021-07-26 | 05 |
7 | Zsebkendő | 3 | 100 | 2021-07-28 | 10 |
8 | Chips csomag | 5 | ötven | 2021-07-30 | 08 |
9 | Jelző | 2 | 30 | 2021-08-13 | 02 |
10 | Olló | 1 | 60 | 2021-08-13 | 07 |
4. példa:
Írjon lekérdezést, hogy lekérje az item_tbl összes értékét, és csak a tételek rendelési óráját a teljes rendelési időből 12 órás formátumban.
Lekérdezés:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%h') AS Item_OrderHour FROM items_tbl;
Itt a TIME_FORMAT () függvény kerül alkalmazásra az Item_OrderTime paraméterben a „%h” paraméterrel, hogy kinyomtassa azt az órát, amikor a cikk megrendelésre kerül. A kis 'h' azt jelenti, hogy az óra 12 órás formátumban kerül kinyomtatásra.
A következő táblázatot kapod kimenetként:
ellenséges keresés
ID | Termék név | Item_Quantity | Darab ár | Item_OrderDate | Item_OrderHour |
---|---|---|---|---|---|
1 | Szappan | 5 | 200 | 2021-07-08 | 04 |
2 | Fogkrém | 2 | 80 | 2021-07-10 | 6 |
3 | Toll | 10 | ötven | 2021-07-12 | 12 |
4 | Üveg | 1 | 250 | 2021-07-13 | 03 |
5 | Kefe | 3 | 90 | 2021-07-15 | 07 |
6 | Jegyzetfüzetek | 10 | 1000 | 2021-07-26 | 05 |
7 | Zsebkendő | 3 | 100 | 2021-07-28 | 10 |
8 | Chips csomag | 5 | ötven | 2021-07-30 | 08 |
9 | Jelző | 2 | 30 | 2021-08-13 | 02 |
10 | Olló | 1 | 60 | 2021-08-13 | 07 |
5. példa:
Írjon lekérdezést, hogy lekérje az item_tbl összes értékét, és csak azt a percet, amikor egy cikk megrendelésre került a teljes rendelési időből.
mysql egyedi kulcs
Lekérdezés:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%i') AS Item_OrderMinute FROM items_tbl;
Itt a TIME_FORMAT () függvény kerül alkalmazásra az Item_OrderTime paraméterben a „%i” paraméterrel, hogy pontosan kinyomtassa azt a percet, amikor a cikk megrendelésre került. A kis „i” azt jelzi, hogy a teljes „Item_OrderTime” perc perce kerül kinyomtatásra.
A következő táblázatot kapod kimenetként:
ID | Termék név | Item_Quantity | Darab ár | Item_OrderDate | Item_OrderMinute |
---|---|---|---|---|---|
1 | Szappan | 5 | 200 | 2021-07-08 | 13 |
2 | Fogkrém | 2 | 80 | 2021-07-10 | 09 |
3 | Toll | 10 | ötven | 2021-07-12 | 00 |
4 | Üveg | 1 | 250 | 2021-07-13 | 07 |
5 | Kefe | 3 | 90 | 2021-07-15 | 18 |
6 | Jegyzetfüzetek | 10 | 1000 | 2021-07-26 | 05 |
7 | Zsebkendő | 3 | 100 | 2021-07-28 | 08 |
8 | Chips csomag | 5 | ötven | 2021-07-30 | 16 |
9 | Jelző | 2 | 30 | 2021-08-13 | 18 |
10 | Olló | 1 | 60 | 2021-08-13 | 17 |
6. példa:
Írjon lekérdezést az item_tbl összes értékének lekéréséhez, és csak azokat a másodperceket, amelyeknél a cikk megrendelésre került a teljes rendelési időből.
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%S') AS Item_OrderSeconds FROM items_tbl;
Itt a TIME_FORMAT () függvény kerül alkalmazásra az Item_OrderTime paraméterben a „%S” paraméterrel, hogy pontosan kinyomtassa azokat a másodperceket, amelyeknél a cikk megrendelésre került. A nagy 'S' azt jelenti, hogy a teljes 'Item_OrderTime'-ből a perc lesz kinyomtatva.
A következő táblázatot kapod kimenetként:
ID | Termék név | Item_Quantity | Darab ár | Item_OrderDate | Item_Order_Seconds |
---|---|---|---|---|---|
1 | Szappan | 5 | 200 | 2021-07-08 | 52 |
2 | Fogkrém | 2 | 80 | 2021-07-10 | 01 |
3 | Toll | 10 | ötven | 2021-07-12 | 02 |
4 | Üveg | 1 | 250 | 2021-07-13 | 05 |
5 | Kefe | 3 | 90 | 2021-07-15 | 43 |
6 | Jegyzetfüzetek | 10 | 1000 | 2021-07-26 | 05 |
7 | Zsebkendő | 3 | 100 | 2021-07-28 | 12 |
8 | Chips csomag | 5 | ötven | 2021-07-30 | 58 |
9 | Jelző | 2 | 30 | 2021-08-13 | 32 |
10 | Olló | 1 | 60 | 2021-08-13 | húsz |