logo

TIME Tietotyyppi SQL:ssä

  • SQL:ssä on monia skenaarioita, kun sinun on tallennettava aika tietokantasi SQL-taulukoihin.
  • Tallentaaksesi ajan SQL-taulukoihisi, sinun tulee ensin luoda taulukkoon sarake, joka pystyy tallentamaan ajan.
  • Jos haluat, että aika tallennetaan taulukkosi sarakkeeseen, sinun on luotava sarake TIME-tietotyypillä.
  • TIME-tietotyyppi tallentaa ajan oletusarvoisesti muodossa 'HH:MM:SS'.
  • SQL:n SELECT-käskyn avulla voit hakea ajan SQL-taulukoiden sarakkeesta.
  • Sen lisäksi, että kellonaika noudetaan oletusmuodossa, jossa se on tallennettu, SQL:ssä on TIME_FORMAT () -funktio, jonka avulla aika voidaan hakea luettavammassa muodossa.
  • Voit hakea ajan oletusmuodossa, jossa se on tallennettu taulukkoon, eli 'HH:MM:SS', tai sinulla on myös mahdollisuus hakea tietyt ajan osat, kuten tunnit, minuutit ja sekunnit. valitsemalla sopiva parametri vaatimuksemme mukaan ja välittämällä se TIME_FORMAT()-funktiolle. Kellonajan voi hakea myös 12 tunnin ja 24 tunnin muodossa.
  • Voimme myös tulostaa kellonajan, jota seuraa AM/PM.

Katsotaanpa muutamia käytännön esimerkkejä ymmärtääksemme tätä käsitettä selkeämmin. Käytämme MySQL-tietokantaa kaikkien kyselyiden kirjoittamiseen.

Taulukon luomiseksi tietokantaan valitsemme ensin tietokannan, johon haluamme luoda taulukon.

 mysql> USE dbs; 

Sitten kirjoitamme seuraavan kyselyn taulukon luomiseksi:

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

TIME Tietotyyppi SQL:ssä

Yllä olevassa kyselyssä sarake nimeltä ItemOrderTime tallentaa ajan, koska tämän sarakkeen tietotyypiksi on asetettu TIME.

Nyt kirjoitamme kyselyn tietueiden lisäämiseksi items_tbl-taulukkoon.

ascii-taulukko 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 Tietotyyppi SQL:ssä

Suoritamme SELECT-kyselyn varmistaaksemme, että kaikki tietueet on lisätty onnistuneesti items_tbl-taulukkoon.

 mysql> SELECT *FROM items_tbl; 

ID Tuotteen nimi Tuote_määrä Tuote_hinta Item_OrderDate Item_OrderTime
1 Saippua 5 200 08.07.2021 04:13:52
2 Hammastahna 2 80 10.7.2021 18:09:01
3 Kynä 10 viisikymmentä 12.7.2021 12:00:02
4 Pullo 1 250 13.7.2021 15:07:05
5 Harjata 3 90 15.7.2021 19:18:43
6 Muistikirjat 10 1000 26.7.2021 05:05:05
7 Nenäliina 3 100 28.7.2021 10:08:12
8 Chips-paketti 5 viisikymmentä 30.7.2021 08:16:58
9 Merkki 2 30 13.8.2021 02:18:32
10 Sakset 1 60 13.8.2021 07:17:30

Yllä olevat kyselytulokset osoittavat, että aika haetaan oletusmuodossa, jossa se on tallennettu, eli 'HH:MM:SS'.

Esimerkki 1:

Kirjoita kysely hakeaksesi kaikki arvot item_tbl:sta ja nimikkeiden tilausajat 12 tunnin muodossa sekä AM/PM, jotta aika-arvot voidaan noutaa luettavammassa muodossa.

Kysely:

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

Tässä TIME_FORMAT()-funktiota käytetään Item_OrderTime-parametrilla '%r', jotta aika tulostetaan 12 tunnin muodossa ja sen jälkeen AM/PM.

valitse sql useista taulukoista

Tuloksena saat seuraavan taulukon:

ID Tuotteen nimi Tuote_määrä Tuote_hinta Item_OrderDate Item_OrderTime
1 Saippua 5 200 08.07.2021 04:13:52 AM
2 Hammastahna 2 80 10.7.2021 18:09:01
3 Kynä 10 viisikymmentä 12.7.2021 12:00:02 PM
4 Pullo 1 250 13.7.2021 03:07:05 PM
5 Harjata 3 90 15.7.2021 19:18:43
6 Muistikirjat 10 1000 26.7.2021 05:05:05 AM
7 Nenäliina 3 100 28.7.2021 10:08:12 AM
8 Chips-paketti 5 viisikymmentä 30.7.2021 08:16:58 AM
9 Merkki 2 30 13.8.2021 02:18:32 AM
10 Sakset 1 60 13.8.2021 07:17:30 AM

Esimerkki 2:

Kirjoita kysely hakeaksesi kaikki arvot item_tbl:sta ja nimikkeiden tilausajat 12 tunnin muodossa sekä AM/PM, jotta aika-arvot voidaan noutaa luettavammassa muodossa.

Kysely:

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

Tässä toimintoa TIME_FORMAT () käytetään Item_OrderTime-parametrilla '%T %p'. '%T' tulostaa ajan 24 tunnin muodossa ja '%p' lisää AM/PM 24 tunnin muotoiltuun aikaan.

merkkijono json-objektiin

Tuloksena saat seuraavan taulukon:

ID Tuotteen nimi Tuote_määrä Tuote_hinta Item_OrderDate Item_OrderTime
1 Saippua 5 200 08.07.2021 04:13:52 AM
2 Hammastahna 2 80 10.7.2021 18:09:01 PM
3 Kynä 10 viisikymmentä 12.7.2021 12:00:02 PM
4 Pullo 1 250 13.7.2021 15:07:05 PM
5 Harjata 3 90 15.7.2021 19:18:43 PM
6 Muistikirjat 10 1000 26.7.2021 05:05:05 AM
7 Nenäliina 3 100 28.7.2021 10:08:12 AM
8 Chips-paketti 5 viisikymmentä 30.7.2021 08:16:58 AM
9 Merkki 2 30 13.8.2021 02:18:32 AM
10 Sakset 1 60 13.8.2021 07:17:30 AM

Esimerkki 3:

Kirjoita kysely hakeaksesi kaikki arvot item_tbl:stä ja vain tuotteiden tilaustunnit koko tilausajasta 24 tunnin muodossa.

Kysely:

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

Tässä TIME_FORMAT () -funktiota käytetään Item_OrderTime-parametrilla '%H' tulostamaan nimenomaan tunti, jolloin tuote tilataan. Iso kirjain H tarkoittaa, että tunti tulostetaan 24 tunnin muodossa.

Tuloksena saat seuraavan taulukon:

ID Tuotteen nimi Tuote_määrä Tuote_hinta Item_OrderDate Item_OrderHour
1 Saippua 5 200 08.07.2021 04
2 Hammastahna 2 80 10.7.2021 18
3 Kynä 10 viisikymmentä 12.7.2021 12
4 Pullo 1 250 13.7.2021 viisitoista
5 Harjata 3 90 15.7.2021 19
6 Muistikirjat 10 1000 26.7.2021 05
7 Nenäliina 3 100 28.7.2021 10
8 Chips-paketti 5 viisikymmentä 30.7.2021 08
9 Merkki 2 30 13.8.2021 02
10 Sakset 1 60 13.8.2021 07

Esimerkki 4:

Kirjoita kysely hakeaksesi kaikki arvot item_tbl:stä ja vain tuotteiden tilaustunnit koko tilausajasta 12 tunnin muodossa.

Kysely:

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

Tässä TIME_FORMAT () -funktiota käytetään Item_OrderTime-parametrilla '%h' tulostamaan nimenomaan tunti, jolloin tuote tilataan. Pieni 'h' tarkoittaa, että tunnit tulostetaan 12 tunnin muodossa.

Tuloksena saat seuraavan taulukon:

skriptien ajaminen linuxissa
ID Tuotteen nimi Tuote_määrä Tuote_hinta Item_OrderDate Item_OrderHour
1 Saippua 5 200 08.07.2021 04
2 Hammastahna 2 80 10.7.2021 6
3 Kynä 10 viisikymmentä 12.7.2021 12
4 Pullo 1 250 13.7.2021 03
5 Harjata 3 90 15.7.2021 07
6 Muistikirjat 10 1000 26.7.2021 05
7 Nenäliina 3 100 28.7.2021 10
8 Chips-paketti 5 viisikymmentä 30.7.2021 08
9 Merkki 2 30 13.8.2021 02
10 Sakset 1 60 13.8.2021 07

Esimerkki 5:

Kirjoita kysely hakeaksesi kaikki arvot item_tbl:stä ja vain minuutti, jolloin tuote tilataan koko tilausajasta.

Kysely:

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

Tässä TIME_FORMAT () -funktiota käytetään Item_OrderTime-parametrilla '%i', jolloin tulostetaan nimenomaan se minuutti, jolloin tuote tilataan. Pieni 'i' tarkoittaa, että minuutti koko 'Item_OrderTime'-tilauksesta tulostetaan.

powershell pienempi tai yhtä suuri kuin

Tuloksena saat seuraavan taulukon:

ID Tuotteen nimi Tuote_määrä Tuote_hinta Item_OrderDate Item_OrderMinute
1 Saippua 5 200 08.07.2021 13
2 Hammastahna 2 80 10.7.2021 09
3 Kynä 10 viisikymmentä 12.7.2021 00
4 Pullo 1 250 13.7.2021 07
5 Harjata 3 90 15.7.2021 18
6 Muistikirjat 10 1000 26.7.2021 05
7 Nenäliina 3 100 28.7.2021 08
8 Chips-paketti 5 viisikymmentä 30.7.2021 16
9 Merkki 2 30 13.8.2021 18
10 Sakset 1 60 13.8.2021 17

Esimerkki 6:

Kirjoita kysely hakeaksesi kaikki arvot item_tbl:stä ja vain sekunnit, jolloin tuote tilataan koko tilausajasta.

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

Tässä TIME_FORMAT () -funktiota käytetään Item_OrderTime-parametrilla '%S' tulostamaan nimenomaan sekunnit, jolloin tuote tilataan. Iso 'S' tarkoittaa, että minuutti koko 'Item_OrderTime'-kohdasta tulostetaan.

Tuloksena saat seuraavan taulukon:

ID Tuotteen nimi Tuote_määrä Tuote_hinta Item_OrderDate Item_Order_Seconds
1 Saippua 5 200 08.07.2021 52
2 Hammastahna 2 80 10.7.2021 01
3 Kynä 10 viisikymmentä 12.7.2021 02
4 Pullo 1 250 13.7.2021 05
5 Harjata 3 90 15.7.2021 43
6 Muistikirjat 10 1000 26.7.2021 05
7 Nenäliina 3 100 28.7.2021 12
8 Chips-paketti 5 viisikymmentä 30.7.2021 58
9 Merkki 2 30 13.8.2021 32
10 Sakset 1 60 13.8.2021 kaksikymmentä

Huomautus: Pienen 's':n käyttäminen yllä olevassa kyselyssä antaa myös saman tulosteen.