Forutsetninger:
Du må ha MySQL eller MariaDB installert på Linux OS (i.e. Centos/RHEL, Ubuntu/Debian). Hvis du trenger hjelp til å installere MySQL/MariaDB, er det mange artikler om Linuxhint.com som du kan sjekke.
Opprette dummybord og rader:
Jeg vil bruke en fødselsdag Tabell for å demonstrere hvordan du skal jobbe med datatyper for dato og klokkeslett i denne artikkelen. Bursdagsbordet har en Navn Typefelt VARCHAR, en Dato Typefelt DATO og a tid Typefelt TID.
Du kan opprette fødselsdag Tabell som følger.
> Lag bord bursdag (Hvis du vil at MySQL/MariaDB automatisk skal legge til gjeldende dato eller gjeldende tid mens du setter inn nye rader i fødselsdag tabell, du kan opprette fødselsdag Tabell som følger.
> Lag bord bursdag (Her, Standard Current_Date Legger automatisk gjeldende dato i Dato Colum hvis det ikke er gitt data for den kolonnen mens du har innsetting. Den samme veien Standard gjeldende_tid Legger automatisk gjeldende tid til tid kolonne.
Arbeider med dato:
Du kan skrive ut gjeldende dato med DAGENS DATO() funksjon som følger:
> Velg Current_Date ();Hvis 'Bob' ble født i dag, kan du legge til 'Bob' i fødselsdag Tabell som følger:
> Sett inn i bursdag (navn, dato) verdier ('bob', current_date ());Du kan også legge til spesifikke fødselsdatoer som følger:
> Sett inn bursdag (navn, dato) verdier ('Lily', '1997-11-24');Den nåværende tilstanden på bursdagsbordet er som følger.
Du kan bare hente ut året som er en del av datoen ved å bruke ÅR() funksjon, måneddelen ved å bruke MÅNED() funksjon, dagsdelen ved å bruke DAG() funksjon som følger:
> Velg navn, år (dato), måned (dato), dag (dato) fra bursdag;Du kan finne månedens navn på en dato ved hjelp av Månednavn () funksjon.
> Velg navn, dato, månednavn (dato) fra bursdag;1 år er lik 52 uker. Du kan finne årets uke ved å bruke Weekofyear () funksjon som følger:
> Velg navn, dato, weekofyear (dato) fra bursdag;På samme måte kan du få dagen i året ved å bruke DayOfyear () funksjon. 1 år er lik 365 dager. 366 dager i et sprangår.
> Velg navn, dato, DayOfyear (dato) fra bursdagen;Du kan finne ukedagen fra en date ved hjelp av Ukedag () funksjon.
> Velg navn, dato, ukedag (dato) fra bursdag;Her er 0 mandag, 1 er tirsdag, 2 er onsdag, 3 er torsdag, 4 er fredag, 5 er lørdag og 6 er søndag.
Du kan også finne ukedagsnavnet ved å bruke Dagnavn () funksjon.
> Velg navn, dato, dagnavn (dato) fra bursdag;Jobber med tiden:
Du kan finne den nåværende systemtiden ved å bruke NÅVÆRENDE TID() funksjon som følger.
> Velg Current_time ();Tidskolonnen i vår fødselsdag Tabellen er null på dette tidspunktet.
> Velg * fra bursdag;La oss legge til noen dummy tidsverdier til tid kolonne.
> Oppdater bursdagssett tid = "21:14:32" Where Name = "Bob";Nå, den fødselsdag Tabellen skal se ut som dette.
> Velg * fra bursdag;Du kan finne tiden på tiden ved å bruke TIME() funksjon, i det øyeblikket som bruker MINUTT() funksjon, og den andre ved hjelp av SEKUND() funksjon som følger:
> Velg navn, time (tid), minutt (tid), andre (tid) fra bursdagen;Arbeider med dato og tid:
Tidligere har jeg lagret dato og klokkeslett i forskjellige felt av fødselsdag bord. Det er upraktisk. Hvis du trenger å lagre dato- og klokkeslettinformasjonen, bør du bruke DATO TID data-type.
Du kan opprette et nytt bursdagsbord Bursdag2 Som bruker datatetypen som følger:
> Lag tabell bursdag2 (Nå importerer du data fra fødselsdag bord til Bursdag2 Tabell som følger:
> Sett inn i bursdag2 Velg navn,Slik Bursdag2 Tabellen skal se ut på dette punktet.
> Velg * fra bursdag2;Du kan konvertere datetiden til sekunder (tidsstempel) ved hjelp av To_seconds () funksjon som følger:
> Velg Navn, To_Seconds (DT) fra Birthday2;Alle funksjonene jeg har brukt i Jobber med dato og Jobber med tiden Deler av denne artikkelen vil også fungere på datetimefelt.
Legge til og trekke fra datoer:
Du kan legge til og trekke fra datoer i MySQL/MariaDB.
De Date_add () funksjon brukes til å legge til datoen og Date_sub () Funksjon brukes til å trekke fra datoen. Fomaten til Date_add () og Date_sub () er det samme.
Formatet til Date_add () funksjon:
Date_add (dt, intervall expr -enhet)Formatet til Date_sub () funksjon:
Dato_sub (DT, Interval Expr -enhet)Her, Intervall er et nøkkelord.
dt er den DATO, TID eller DATO TID som du vil legge til eller trekke fra fra.
enhet kan være ÅR, MÅNED, DAG, UKE, TIME, MINUTT, SEKUND.
expr er en numerisk kvanitet av de definerte enhet.
For eksempel kan du legge til et år til datoen ved hjelp av Date_add () funksjon som følger:
> Velg Navn, DT, Date_add (DT, Intervall 1 år) fra Birthday2;På samme måte kan du trekke fra en måned ved å bruke Date_sub () funksjon som følger:
> Velg Navn, DT, Date_Sub (DT, Intervall 1 måned) fra Birthday2;Finne forskjellen mellom to datoer:
Du kan finne forskjellen mellom to datoer ved å bruke Timestampdiff () funksjon.
Formatet til Timestampdiff () funksjon er:
Timestampdiff (enhet, DT1, DT2)Her, dt1 og dt2 kan være av type DATO eller DATO TID.
De Timestampdiff () Funksjonen returnerer (dt2 - dt1) i det definerte enhet.
De enhet kan være ÅR, MÅNED, DAG, UKE, TIME, MINUTT, SEKUND.
Du kan finne alderen (i sekunder) til hver person i bursdagsbordet som følger:
> Velg Navn, Current_Timestamp (), DT, Timestampdiff (andre,På samme måte kan du finne alderen i dager som følger:
> Velg Navn, Current_Timestamp (), DT, TimesTampdiff (dag,Du kan også finne alderen i år som følger:
> Velg navn, Current_Timestamp (), DT, TimesTampdiff (år, DT,Så det er i utgangspunktet slik du jobber med MySQL/MariaDB -dato og tid. Takk for at du leste denne artikkelen.