mysql date format timestamp functions with examples
Ta izčrpna vadnica vsebuje sintakso in primere funkcij MySQL Date Format in Timestamp, kot so trenutni datum, dodajanje datuma, dodajanje časa itd.:
V tej vadnici bomo poglobljeno spoznali podatkovne tipe MySQL Date and Time in različne funkcije, ki jih MySQL ponuja za obdelavo datumskih in časovnih vrednosti.
MySQL ponuja širok nabor funkcij / pripomočkov za izvajanje različnih operacij, kot so dodajanje in odštevanje datumov, ugotavljanje razlike med dvema datumoma in ekstrahiranje določenih delov dane vrednosti datum-čas.
Kaj se boste naučili:
- Oblika zapisa časa in funkcije MySQL
- Zaključek
Oblika zapisa časa in funkcije MySQL
Te funkcije so zelo pomembne, kadar koli so v tabelah MySQL potrebne kakršne koli operacije z vrednostmi stolpca z datumom in časom.
Predpogoji
Za zagon primerov, uporabljenih v vadnici, bi potrebovali lokalno nastavitev namestitve MySQL.
= >> Za namestitev MySQL glejte našo vadnico tukaj.
Vrste podatkov DATUM IN ČAS
Podatkovni tipi vključujejo LETO, DATUM, ČAS, DATETIME in TIMESTAMP.
MySQL shrani vrednosti datuma in časa z uporabo 5 različnih podatkovnih tipov, to je - LETO, DATUM, ČAS, DATETIME in TIMESTAMP. Poskusimo jih na kratko razumeti v spodnji tabeli, preden se poglobimo v OBLIKE DATUMOV in FUNKCIJE DATUMA, ki jih ponuja MySQL.
Tip | Sintaksa | Doseg | Spomin | Oblika |
---|---|---|---|---|
% H | Ura - 00 - 23 | |||
LETO | Uporablja se za shranjevanje samo letnega dela colName LETO | 1901 - 2155 | eno | „LLLL“ |
DATUM | Uporablja se za shranjevanje samo dela DATUM. colName DATUM | '1000-01-01' do '9999-12-31' | 3. | „LLLL-MM-DD“ |
ČAS | Uporablja se za shranjevanje samo TIME dela. colName ČAS colName ČAS (n) n -> natančnost ali delna komponenta | ‘00: 00: 00 ’do ‘23: 59: 59’ | 3 + delno shranjevanje | „Hh: mm: ss. (Ulomek)“ |
DATUM ČAS | Uporablja se za shranjevanje DATUMA IN ČASA colName DATUM ČAS colName DATETIME (n) n -> natančnost ali delna komponenta | '1000-01-01 00: 00: 00.000000' do '9999-12-31 23: 59: 59.999999' | 5 + delno shranjevanje | „LLLL-MM-DD hh: mm: ss. (Ulomek)“ |
TIMESTAMP | Uporablja se za shranjevanje DATUMA IN ČASA colName TIMESTAMP colName TIMESTAMP (n) n -> natančnost ali delna komponenta | '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC. | 4 + delno shranjevanje | „LLLL-MM-DD hh: mm: ss. (Ulomek)“ |
Zdaj bomo razumeli pomnilniške zahteve za delno shranjevanje. Za podatkovne vrste TIME, DATETIME in TIMESTAMP bi bil porabljeni pomnilnik drugačen, odvisno od določene delne komponente.
Število delnih številk | Pomnilnik (v bajtih) |
---|---|
0 | 0 |
1-2 | eno |
3-4 | dva |
5-6 | 3. |
Z zgornjo tabelo na primer, če imamo vrsto stolpca kot - TIME (5).
Potem bi bil skupni uporabljeni pomnilnik => pomnilnik, ki ga uporablja tip podatkov TIME + pomnilnik, ki ga uporablja 5 delnih komponent => 3 + 3 => 6 bajtov
Ponazorimo vse te vrste podatkov kot del posamezne tabele in si oglejmo vrednosti, ki so dodeljene vsakemu tipu.
CREATE TABLE datetime_illustration(year_col YEAR, date_col DATE, time_col TIME, time_col_fractional TIME(2), datetime_col DATETIME, datetime_col_fractional DATETIME(6), timestamp_col TIMESTAMP, timestamp_col_fractional TIMESTAMP(6))
V tabelo vstavite eno vrstico s funkcijo ‘zdaj ()’, ki je trenutni časovni žig. Upoštevajte, kako bi uporaba te funkcije povzročila obrezovanje / vstavljanje samo zahtevanega dela trenutnega datuma in časa, odvisno od vrste podatkov stolpca.
insert into datetime_illustration values (now(), now(), now(), now(), now(), now(), now(), now()); select * from datetime_illustration
Zdaj pa si oglejmo vsebino tabele za analizo podatkov v različnih stolpcih.
select * from datetime_illustration
Torej, zgornje podatke povzamemo kot,
- Vsi stolpci so dobili dodeljene vrednosti glede na vrste podatkov, na primer, za prvi stolpec - LETO - čeprav smo vstavili s funkcijo ‘zdaj ()’, ki je trenutni časovni žig, je vstavljena vrednost le del leta trenutnega datuma - tj. 2020.
- funkcija now () vrne trenutni datum in čas v obliki - dd: mm: llllll hh: mm: ss
- Upoštevajte delni del v imenih stolpcev z '_fractional'. Odvisno od določenega števila delnih številk se zajemajo in prikazujejo delne vrednosti.
Samodejna inicializacija in posodobitev polj DATETIME in TIMESTAMP
V resničnih scenarijih so ponavadi inicializacija in posodobitve DATETIME nastavljene na samodejne.
Kaj to pomeni, da imajo tabele na splošno dva stolpca - created_time in updated_time .
stolpec created_time je konfiguriran tako, da zavzame vrednost trenutnega sistemskega časa vsakič, ko je vrstica vstavljena, podobno pa je updated_time nastavljen tako, da vzame trenutni sistemski čas, kadar koli so posodobitve določene vrstice tabele.
Prosimo, upoštevajte, da, v času vstavljanja vrstic bi imela ustvarjena_čas in posodobljena_časa enako vrednost. Vse nadaljnje posodobitve vrstice bi privedle do posodobitve polja updated_time s trenutnim sistemskim časom.
Poskusimo ustvariti takšno tabelo, ki ima samodejno inicializacijo in posodobitev.
Ustvarili bomo tabelo z imenom cena delnic ki ima polja zaloge, ceno in datum in čas - created_on in updated_on.
create table stock_price(symbol varchar(100), price decimal(10,2), created_on datetime default current_timestamp, updated_on datetime default current_timestamp on update current_timestamp)
V tabelo vstavite nekaj podatkov:
insert into stock_price(symbol,price) values('AMZN','3000.10');
Oglejmo si rezultat (upoštevajte, da smo pravkar vnesli vrednosti za simbol in ceno - stolpce z datumom in časom, created_on in updated_on je treba samodejno inicializirati)
select * from stock_price
youtube video pretvornik v mp4 format
Poskusite posodobiti ceno delnice za zalogo ‘AMZN’, kot je prikazano spodaj:
update stock_price set price='3005.15' where symbol='AMZN'
Zdaj pa spet pridobite podatke za tabelo. Videli bi morali, kako se vrednost updated_time spreminja, ne glede na čas, ko se je zgodila posodobitev stock_price.
select * from stock_price
Zdaj lahko iz zgornjega primera opazite, da je bila vrednost stolpca updated_on posodobljena na časovni žig posodobitve.
Funkcije datuma in časa MySQL
MySQL ponuja številne funkcije za stolpce z datumskimi in časovnimi vrstami podatkov.
Te funkcije se običajno uporabljajo za
- Med poizvedbo podatkov pretvorite shranjeni datum v zahtevano obliko.
- Manipuliranje z obstoječimi datumskimi časovnimi polji, na primer dodajanje intervala trenutni vrednosti stolpca, odštevanje ur od trenutno nastavljenih vrednosti itd.
- Pridobivanje določenih informacij iz shranjenih vrednosti, na primer, iz shranjene vrednosti izvlečete le del »datum« in nadaljujete s filtriranjem / operacijami, kot je SKUPINA PO z datumom itd.
V tem poglavju bomo videli primere najpogosteje uporabljenih funkcij Datum in Čas.
>> Glej tukaj za celoten seznam takih funkcij.
# 1) Pridobivanje trenutnega datuma in ure
MySQL ponuja veliko priročnih funkcij / konstantnih vrednosti za pridobivanje trenutnih vrednosti datuma in časa in se običajno uporabljajo med shranjevanjem vrednosti v stolpcih z datumom in časom ali pridobivanjem v katerem koli določenem obsegu od trenutnih vrednosti datuma in časa.
a) curdate ()
Ta funkcija dobi trenutni datum. Drugi sinonimi funkcije curdate () so - CURRENT_DATE, CURRENT_DATE (), CURRENT_DATE ( delne številke )
Primer te funkcije je prikazan spodaj:
select curdate(), CURRENT_DATE(), CURRENT_DATE
b) čas ()
Ta funkcija dobi trenutni čas. Če želite dobiti delni del (do 6 števk), navedite ulomek v oklepajih kot čas (3) S tem bi dobili trenutno vrednost sistemskega časa do 3 decimalnih mest.
Drugi sopomenki funkcije curtime () so- CURRENT_TIME, CURRENT_TIME (), CURRENT_TIME ( delne številke )
select curtime(), CURRENT_TIME(), CURRENT_TIME, curtime(6), CURRENT_TIME(6)
c) zdaj ()
Ta funkcija dobi trenutni časovni žig. V oklepajih navedite delni del, na primer, zdaj (4) bi trenutni časovni žig prinesel do 4 decimalnih mest.
Drugi sinonimi funkcije now () vključujejo CURRENT_TIMESTAMP, CURRENT_TIMESTAMP (), CURRENT_TIMESTAMP ( delne številke )
select now(), CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP, now(6), CURRENT_TIMESTAMP(6)
# 2) Dodajanje in odštevanje datumov
MySQL ponuja funkcije za dodajanje in odštevanje vrednosti datuma in časa obstoječi vrednosti, shranjeni v stolpcu, ali za uporabo med poizvedovanjem po podatkih. Funkcije bomo razumeli s pomočjo primerov.
Spodnjo tabelo bomo uporabili za dodajanje datuma in časa odštevanju.
create table datetime_calc(datecol DATE, timecol TIME, datetimecol DATETIME(6));
V zgornjo tabelo vstavite nekaj vnosov z uporabo stavkov INSERT, kot je prikazano spodaj:
insert into datetime_calc values(now(), now(), now(6)); insert into datetime_calc values(now(), now(), now(6));
Poizvedimo v zgornji tabeli in si oglejmo shranjene podatke:
Poleg posodabljanja stolpcev v tabeli lahko neposredno izvajamo manipulacijo datuma in časa z uporabo stavka SELECT, tako da uporabimo kateri koli določen datum / čas ali vrednost datuma in časa.
a) DODAJ ()
Kot že ime pove, se s to funkcijo doda datum obstoječi datumski vrednosti, ki bi lahko bila tipa - DATE, DATETIME ali TIMESTAMP
Sintaksa:
ADDDATE(inputTimeValue/fieldName, noOfDays)
ADDDATE lahko pokličete tudi z vrednostjo Interval - ki je lahko DAYS, WEEK, HOUR, MINUTE, SECOND itd.
Sintaksa bi se v tem primeru spremenila v,
ADDDATE(inputTimeValue/fieldName, Interval intervalUnit)
Oglejmo si nekaj primerov, da to bolje razumemo.
SELECT ADDDATE('2020-08-15', 31); // output '2020-09-15'
Ko je kot drugi argument podana celoštevilčna vrednost, se to obravnava kot število dni, ki jih je treba dodati danemu datumu.
Še nekaj primerov z intervalom kot - MONTH, HOUR in WEEK je:
SELECT ADDDATE('2020-01-02', INTERVAL 1 MONTH); //output 2020-02-02
SELECT ADDDATE('2020-01-02 12:11:11', INTERVAL 5 HOUR); //output 2020-01-02 17:11:11
SELECT ADDDATE('2020-01-02 12:11:11', INTERVAL 1 WEEK); //output 2020-01-09 12:11:11
Drugi primeri intervalov bi lahko bili - MINUTE, SECOND, QUARTER itd.
Če želite posodobiti stolpec obstoječe tabele, na primer, za tabelo, ki smo jo ustvarili 'datetime_calc', če želimo posodobiti vrednost 'datecol' in dodati 10 dni vsem datumom v stolpcu, lahko uporabimo poizvedbo, kot spodaj:
update datetime_calc set datecol=ADDDATE(datecol, 30);
Zdaj uporabite SELECT * za prikaz vseh podatkov v tabeli datetime_calc.
SELECT * FROM datetime_calc
V zgornjem izhodu lahko vidimo, da so bile vrednosti stolpca datecol posodobljene na 24-09-2020 od 25-08-2020 po dodajanju 30 dni obstoječim vrednostim.
b) DODAJ (()
Podobno kot ADD_DATE lahko tudi funkcijo ADD_TIME dodate časovno komponento obstoječemu - DATETIME, TIME ali TIMESTAMP stolpcu / polju ali podanemu vnosu.
Sintaksa:
ADDTIME(inputTimeValue/fieldName, ‘hh:mm:ss’)
Primer:
SELECT ADDTIME('2020-01-02 12:11:11', '01:10:00'); // output 2020-01-02 13:21:11
Oglejmo si primer, ko v tabeli posodabljamo stolpec z datumom in časom, tako da vsem vrednostim v tem stolpcu dodamo 5 ur. Tu je primer poizvedbe:
update datetime_calc set datetimecol=ADDTIME(datetimecol, '05:00:00')
Izhod tabele pred:
// output '2020-08-25 05:53:37.851379' '2020-08-25 05:53:39.711515'
Izhod tabele po:
// output '2020-08-25 10:53:37.851379' '2020-08-25 10:53:39.711515'
c) SUBDATE ()
SUBDATE je popolnoma podoben ADDDATE, edina razlika je v tem, da SUBDATE odšteje dani interval / št. dni od vrednosti stolpca / polja.
Sintaksa:
SUBDATE(inputTimeValue/fieldName, noOfDays)
Oglejmo si nekaj primerov za ponazoritev funkcije SUBDATE ().
SELECT SUBDATE('2020-08-15', 31); // output 2020-07-15
Spodnji primer prikazuje odštevanje intervala, omenjenega v urah / dneh v tednu itd.
SELECT SUBDATE('2020-01-02 12:11:11', INTERVAL 1 WEEK); // output 2019-12-26 12:11:11 SELECT SUBDATE('2020-01-02 12:11:11', INTERVAL 12 HOUR); // output 2020-01-02 00:11:11
d) SUBTIME ()
SUBTIME odvzame časovno vrednost, določeno v ‘hh: mm: ss’ od dane vrednosti polja datum in čas.
Sintaksa:
SUBTIME(inputTimeValue/fieldName, ‘hh:mm:ss’)
Primeri funkcije SUBTIME ():
SELECT SUBTIME('2020-01-02 12:11:11', '02:20:05'); // output 2020-01-02 09:51:06
# 3) Pretvarjanje datumov
MySQL ponuja različne vgrajene funkcije od pretvorbe datumov iz ene oblike v drugo. Oglejmo si najpogosteje uporabljene funkcije za pretvorbo datumov.
a) CONVERT_TZ ()
Ta funkcija se uporablja za pretvorbo datuma iz enega časovnega pasu v drugega. Ti so priročni v situacijah, ko domnevamo, da so bili vaši podatki shranjeni z uporabo časovnega pasu UTC in med prikazom želite pretvoriti v izbrani časovni pas.
Na primer, pretvori UTC v MET (srednjeevropski čas).
SELECT CONVERT_TZ('2004-01-01 12:00:00', 'UTC', 'MET');
Nasveti / opombe
# 1) Če želite dobiti seznam vseh časovnih pasov v sistemski zbirki podatkov MySQL, lahko zaženete spodnjo poizvedbo in uporabite katero koli ime časovnega pasu za pretvorbo iz enega časovnega pasu v drugega.
select * from mysql.time_zone_name
#two) Podatki o časovnem pasu se zapolnijo med namestitvijo primerka strežnika MySQL. Če je rezultat zgornje poizvedbe NULL, boste morda morali najprej izpolniti vrednosti časovnega pasu v sistemskih tabelah MySQL.
>> Sledite temu povezava za več pomoči pri tem.
b) FROM_UNIXTIME ()
Ta funkcija se uporablja za pretvorbo danega UNIX TIMESTAMP v format datuma in časa MySQL.
SELECT FROM_UNIXTIME(1547430881); //output 2019-01-14 07:24:41
c) UNIX_TIMESTAMP
Ta funkcija se uporablja za pretvorbo določenega datuma MySQL v časovni žig UNIX.
SELECT UNIX_TIMESTAMP('2020-03-15 07:10:56.123') //output 1584236456.123
Časovni žig UNIX je prikaz določenega datuma v obliki sekund, ki so pretekle od 1. januarja 1970 po UTC.
>> Glej tukaj za več podrobnosti o časovnem žigu UNIX.
# 4) Pridobivanje določenih delov stolpcev DateTime
Včasih je za določeno vrednost vrednosti datuma v tabeli treba pridobiti določen del vrednosti datuma. Na primer , domnevamo, da želite šteti št. naročil in jih razvrstite po dnevih, tednih, mesecih itd.
In na splošno te vrednosti v tabeli niso shranjene kot ločeni stolpci - na primer, imeli bi samo en stolpec, kot je - created_on, ki bi bil polje za datum in čas in ne bi imel ločenih stolpcev, kot so - datum, mesec, leto itd.
MySQL ponuja veliko uporabnih metod, kjer lahko iz polja DateTime izvlečete želeni del.
Recimo, da imamo vrednost datuma in časa kot - ‘2020-03-15 07: 10: 56.123’
Oglejmo si nekatere pogosto uporabljene funkcije s primeri, ki uporabljajo zgornjo vrednost datuma in časa.
a) Izvleček DAN
MySQL ponuja naslednje funkcije za pridobivanje podatkov DAY:
DATUM () - Izvlecite del DATE () polja DateTime.
pl sql intervju vprašanja in odgovori za izkušene
SELECT DATE('2020-03-15 07:10:56.123'); //output 2020-03-15
DAYOFMONTH () - Izvlecite DAY del datuma in ure. To je v bistvu dan v mesecu. Okrajšava za uporabo te funkcije je DAY ()
SELECT DAYOFMONTH('2020-03-15 07:10:56.123'); //output 15
DAYOFWEEK () - Izvleče indeks, ki ustreza dnevu v tednu - vrednosti med 1 in 7.
SELECT DAYOFWEEK('2020-03-15 07:10:56.123'); //output 1
DAYOFYEAR () - Izvleček dneva v smislu št. dni v enem letu. Vrednosti se gibljejo med 1 in 365 (ali 366, če gre za prestopno leto).
SELECT DAYOFYEAR('2020-03-15 07:10:56.123'); //output 75
DAYNAME () - Izvleče ime dneva z vrednostmi od ponedeljka do nedelje.
SELECT DAYNAME('2020-03-15 07:10:56.123'); //output Sunday
b) Izvleček ČASA
MySQL ponuja naslednje funkcije za pridobivanje vrednosti TIME:
ČAS () - Izvleče časovni del v obliki hh: mm: ss (s komponento delnih sekund, če je na voljo).
SELECT TIME('2020-03-15 07:10:56.123'); //output '07:10:56.123'
URA () - Izvleče urni del polja / vrednosti - vrednosti med 1-24.
SELECT HOUR('2020-03-15 07:10:56.123'); //output 7
MINUT () - Izvleče minutni del danega datuma in časa - vrednosti se gibljejo med 1-60.
SELECT MINUTE('2020-03-15 07:10:56.123'); //output 10
DRUGI () - Izvleče sekundni del danega datuma in časa - vrednosti med 1-60.
SELECT SECOND('2020-03-15 07:10:56.123'); //output 56
MIKROSEKOND () - Izvleče del mikrosekunde danega datuma.
SELECT MICROSECOND('2020-03-15 07:10:56.123'); //output 123000
c) Izvleček MESECA
MESEC () - Izvleče mesečni indeks. Vrednosti od 1 do 12.
SELECT MONTH('2020-03-15 07:10:56.123'); //output 3
MONTHNAME () - Izvleče ime meseca. Vrednosti se gibljejo med januarjem in decembrom.
SELECT MONTHNAME('2020-03-15 07:10:56.123'); //output March
d) Izvleček TEDNA, LETA in ČETRTLETJA
TEDEN () - Izvleče TEDEN leta za dano vrednost DateTime.
SELECT WEEK('2020-03-15 07:10:56.123'); //output 11
LETO () - Izvleče LETNI del datuma.
SELECT YEAR('2020-03-15 07:10:56.123'); //output 2020
ČETRTLETINA () - Izvleče četrtletje glede na leto. Vrednosti se gibljejo med 1 in 4.
SELECT QUARTER('2020-03-15 07:10:56.123'); //output 1
Vse te zgornje metode se večinoma uporabljajo za analizo podatkov in napovedovanje - na primer, kateri dnevi v mesecu so bili št. najvišjih naročil itd.
# 5) Iskanje razlike med dvema datumoma
Da bi ugotovil razliko med dvema vrednostma podanih datumskih in poljskih vrednosti, MySQL ponuja funkciji DATEDIFF () in TIMEDIFF ().
a) DATEDIFF ()
Vrne razliko med dvema vrednostma DateTime (ali datuma) v nobenem dnevu.
Sintaksa:
DATEDIFF(DateTime1, DateTIme2)
Oglejmo si nekaj primerov za funkcijo DATEDIFF ():
DATEDIFF () uporablja vnose DateTime.
SELECT DATEDIFF('2020-01-05 12:11:11.11', '2020-01-03 14:11:11') //output 2
DATEDIFF () z uporabo vnosov datuma.
SELECT DATEDIFF('2020-04-02', '2020-01-04') //output 89
DATEDIFF () z uporabo datumskih vhodov z negativnim izhodom.
SELECT DATEDIFF('2020-04-02', '2020-04-05') //output -3
b) TIMEDIFF ()
Ta funkcija vrne razliko med dvema vrednostma datuma in časa (ali časom), izraženo v ‘hh: mm: ss’ z neobveznim delnim delom, odvisno od vhoda, s katerim je bila klicana funkcija TIMEDIFF ().
Sintaksa:
TIMEDIFF(DateTime1, DateTIme2)
Glede na zgornjo sintakso bi bil rezultat funkcije TIMEDIFF () čas, določen kot 'hh: mm: ss' za izraz => DateTime1 - DateTIme2
Prosimo, upoštevajte, da,
- Oba izraza 1 in izraz2 sta istega tipa - tj. En datum, drugi čas pa vrneta NULL vrednost.
- Izraz1 in Izraz2 ne moreta biti samo datuma. Primer: DATEDIFF (2020-01-01, 2020-02-01) bi vrnil NULL.
Oglejmo si nekaj primerov za funkcijo TIMEDIFF ():
TIMEDIFF () z uporabo vhodov DateTime.
SELECT TIMEDIFF('2020-01-4 12:11:11.11', '2020-01-03 12:11:11') //output 24:00:00.11
TIMEDIFF () z vnosom časa.
SELECT TIMEDIFF('12:11:11.11', '02:12:11') //output 09:59:00.11
TIMEDIFF (), ki vrne negativni izhod.
SELECT TIMEDIFF('2020-01-01 12:11:11.11', '2020-01-03 12:11:11') //output -47:59:59.89
Prosimo, upoštevajte, da tako DATEDIFF () kot TIMEDIFF () lahko vrneta NEGATIVNE vrednosti, kadar je prvi argument manjši od drugega - t.j. prvi argument je starejša vrednost dateTime v primerjavi z drugim.
# 6) Oblikovanje datumov
Funkcija DATE_FORMAT () pretvori datum v dani obliki.
Na primer: Pretvorba zahtevanega datuma v format mm / llll.
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%m/%Y'); //output 03/2020
Oglejmo si nekaj običajnih pravil za uporabo specifikatorjev formatov:
Oblika | Opis |
---|---|
% Y | Letna vrednost - 4 številke |
% Y | Vrednost leta - 2 številki |
% M | Ime meseca - januar, februar |
% m | Ime meseca - številčno |
% d | Dan v mesecu |
% h | Ura - 00 - 12 |
%jaz | Zapisnik |
% S | Sekunde |
Glede na zahtevo je mogoče uporabiti te specifikatorje formata in MySQL DateTime pretvoriti v zahtevano obliko.
Primer: Pretvorbo v format dd / mm / llll lahko določite kot:
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%d/%m/%Y'); //output 15/03/2020
>> Glej tukaj za celoten seznam specifikatorjev formatov, ki jih podpira MySQL.
Pogosto zastavljena vprašanja
V # 1) Kako lahko spremenimo del leta shranjenega datuma v MySQL?
Odgovor: Za posodobitev vrednosti leta na določeno število za določen datum lahko uporabimo DATE_ADD funkcijo in dodajte razliko med trenutnim datumom in letom, ki ga želimo spremeniti.
Na primer: Recimo, da imamo datum '2020-03-15 07: 10: 56.123' in želimo samo spremeniti letni del datuma na 2018. Da bi to naredili,
- Najprej lahko najdemo razliko med letom, ki se posodablja, in dejanskim letom datuma. To bi lahko dosegli s funkcijo YEAR.
SELECT (2018 - year('2020-03-15 07:10:56.123')) //output -2
- Zdaj lahko s funkcijo DATE_ADD dodamo ta -2 kot letni interval.
SELECT DATE_ADD('2020-03-15 07:10:56.123', INTERVAL -2 year) //output 2018-03-15 07:10:56.123000
Zgoraj lahko vidite, da smo pravkar spremenili letni del datuma.
Enak nabor korakov je mogoče uporabiti, kadar je treba spremeniti določen del datuma. Primer: Mesec, dan itd.
V # 2) Kako spremeniti datum in čas v zahtevani obliki v MySQL?
kakšno programsko opremo potrebujete za izdelavo aplikacije
Odgovor: MySQL ponuja funkcijo DATE_FORMAT () za pretvorbo datuma in časa v potreben formatiran niz za prikaz v rezultatih poizvedbe.
>> Glej tukaj za popoln seznam specifikatorjev formatov.
Primer: Za pretvorbo datuma in časa v obliko - dd: mm: llll lahko uporabite naslednjo poizvedbo:
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%d:%m:%Y');
V # 3) Kakšna je oblika datuma v MySQL?
Odgovor: Standardna oblika datuma v MySQL je „dd-mm-llll hh: mm: ss. { delni del }
Vzorčna vrednost datuma in časa, shranjena v MySQL - ‘2020-03-15 07: 10: 56.123’
V # 4) Kako v MySQL ustvariti tabelo s podatkovnim tipom DATUM.
Odgovor: MySQL ponuja različne vrste podatkov za shranjevanje datumskih in časovnih vrednosti po potrebi. Za samo shranjevanje datumov - lahko uporabite podatkovni tip DATE. Podatke hrani v obliki llll-mm-dd.
Oglejmo si primer določanja stolpca kot vrste DATUM:
CREATE TABLE date_illustration(date_col DATE);
Zaključek
V tej vadnici smo spoznali različne tipe podatkov, ki jih ponuja MySQL za shranjevanje datumskih in časovnih vrednosti, in kako lahko različne enostavne funkcije, ki jih ponuja MySQL, uporabijo za izračun datumskih časovnih vrednosti.
Spoznali smo tudi različne funkcije, kot so pridobivanje določenih delov dane vrednosti DateTime, pretvorba določenega datuma v drugo obliko, dodajanje vrednosti datuma / časa obstoječim vrednostim itd.
DateTime je ena najpomembnejših podatkovnih vrst v MySQL in je zelo pomembna za pridobivanje podrobnosti, kdaj se je dogodek zgodil.
Te vrednosti zelo pogosto uporabljajo analitiki podatkov / modeli strojnega učenja / oblikovanja cen itd., Kjer se veliko nareže in nareže datum, da se pripravijo modeli strojnega učenja in sprejmejo ključne poslovne odločitve.
Priporočeno branje
- Vadnica za C # DateTime: Delo z datumom in časom v C # s primerom
- PL SQL Datetime Format: funkcije datuma in časa v PL / SQL
- Vadnica Python DateTime s primeri
- Datum in čas v C ++ z primeri
- Vadnica za ustvarjanje pogleda MySQL s primeri kode
- MySQL Vstavi v tabelo - Vstavi sintakso in primere izjave
- MySQL Vodič za ustvarjanje tabel s primeri
- Izjava MySQL Delete - Izbriši sintakso ukaza in primere