logo

Funcții de dată și oră SQL

În SQL , datele sunt complicate pentru începători, deoarece în timpul lucrului cu o bază de date, formatul datelor din tabel trebuie să fie potrivit cu datele de intrare de inserat. În diferite scenarii, în loc de dată, se utilizează datetime (ora este, de asemenea, implicată cu data).

Pentru stocarea unei date sau a unei valori de dată și oră într-o bază de date, MySQL oferă următoarele tipuri de date:

DATA format AAAA-LL-ZZ
DATETIME format: AAAA-LL-ZZ HH:MI: SS
TIMESTAMP-UL format: AAAA-LL-ZZ HH:MI: SS
AN format YYYY sau YY

Acum, veniți la câteva funcții populare în funcțiile de dată SQL.



ACUM()

Returnează data și ora curente.

Interogare:

SELECT NOW();>

Ieșire:

acum metoda de ieșire imagine

CURDATE()

Returnează data curentă.

Interogare:

conversia int în șir în java
SELECT CURDATE();>

Ieșire:

IEȘIRE2

CURTIME()

Returnează ora curentă.

Interogare:

SELECT CURTIME();>

Ieșire:

IEȘIRE3

cum să descărcați video de pe youtube vlc

DATA()

Extrage partea dată a unei expresii de dată sau dată/oră. Exemplu: pentru tabelul de mai jos numit „Test”

Id Nume Ora Nașterii
4120 Practică 1996-09-26 16:44:15,581

Interogare:

SELECT Name, DATE(BirthTime)  AS BirthDate FROM Test;>

Ieșire:

Nume Data de naștere
Practică 26-09-1996

EXTRAGE()

Returnează o singură parte a unei date/ora.

Sintaxă

EXTRACT(unitatea FROM data);

Pot fi luate în considerare mai multe unități, dar numai unele sunt utilizate, cum ar fi MICROSECOND, AL DOILEA, MINUT, ORA, ZI, SĂPTĂMÂNĂ, LUNA, TRIMESTRE, AN etc. Și „data” este o expresie de dată validă. Exemplu: pentru tabelul de mai jos numit „Test”

Id Nume Ora Nașterii
4120 Practică 1996-09-26 16:44:15,581

Interogare:

SELECT Name, Extract(DAY FROM  BirthTime) AS BirthDay FROM Test;>

Ieșire:

Nume Zi de nastere
Practică 26

Interogare:

SELECT Name, Extract(YEAR FROM BirthTime) AS BirthYear FROM Test;>

Ieșire:

Nume Anul nasterii
Practică o mie nouă sute nouăzeci și șase

Interogare:

SELECT Name, Extract(SECOND FROM  BirthTime) AS BirthSecond FROM Test;>

Ieșire:

Nume Nașterea a doua
Practică 581

DATE_ADD()

Adaugă un interval de timp specificat la o dată.

Sintaxă:

java char la șir

DATE_ADD(data, INTERVAL tip expr);

Where, date – expresie de dată validă, iar expr este numărul de intervale pe care vrem să le adăugăm. și tipul poate fi unul dintre următoarele: MICROSECOND, AL DOILEA, MINUT, ORA, ZI, SĂPTĂMÂNĂ, LUNA, TRIMESTRE, AN etc. Exemplu: Pentru tabelul de mai jos numit „Test”

Id Nume Ora Nașterii
4120 Practică 1996-09-26 16:44:15,581

Interogare:

SELECT Name, DATE_ADD(BirthTime, INTERVAL  1 YEAR) AS BirthTimeModified FROM Test;>

Ieșire:

Nume BirthTimeModified
Practică 1997-09-26 16:44:15,581

Interogare:

SELECT Name, DATE_ADD(BirthTime,  INTERVAL 30 DAY) AS BirthDayModified FROM Test;>

Ieșire:

Nume Ziua NașteriiModificată
Practică 1996-10-26 16:44:15,581

Interogare:

SELECT Name, DATE_ADD(BirthTime, INTERVAL  4 HOUR) AS BirthHourModified FROM Test;>

Ieșire:

Nume Nașterea a doua
Practică 1996-10-26 20:44:15,581

DATE_SUB()

Scade un interval de timp specificat dintr-o dată. Sintaxa pentru DATE_SUB este aceeași cu DATE_ADD, doar diferența este că DATE_SUB este folosit pentru a scădea un anumit interval de dată.

DATEDIFF()

Returnează numărul de zile dintre două date.

Sintaxă:

dacă altceva java

DATEDIFF(data1, data2);

data1 și data2- expresie dată/oră

Interogare:

SELECT DATEDIFF('2017-01-13','2017-01-03') AS DateDiff;>

Ieșire:

DataDiff
10

FORMATUL DATEI()

Afișează date/ora în diferite formate.

Sintaxă:

DATE_FORMAT(data,format);

data este o dată validă, iar formatul specifică formatul de ieșire pentru dată/ora. Formatele care pot fi folosite sunt:

  • %a-Nume prescurtat pentru ziua săptămânii (duminică-sâmbăt)
  • %b-Numele lunii abreviat (ian-dec)
  • %c-lună, numeric (0-12)
  • %Z-Ziua lunii cu sufixul englezesc (0-a, 1-a, 2-a, 3-a)
  • %d-ziua lunii, numeric (00-31)
  • %e-Ziua lunii, numeric (0-31)
  • %f-microsecunde (000000-999999)
  • %H-Hour (00-23)
  • %h-oră (01-12)
  • %I-Hour (01-12)
  • %i-minute, numeric (00-59)
  • %j-Ziua anului (001-366)
  • %k-oră (0-23)
  • %l-oră (1-12)
  • Nume %L-lună (ianuarie-decembrie)
  • %m-lună, numeric (00-12)
  • %p-AM sau PM
  • %r-Time, 12 ore (hh:mm: ss urmat de AM sau PM)
  • %S-Secunde (00-59)
  • %s-secunde (00-59)
  • %T-Time, 24 de ore (hh:mm: ss)
  • %U-Week (00-53) unde duminica este prima zi a săptămânii
  • %u-Week (00-53) unde luni este prima zi a săptămânii
  • %V-Week (01-53) unde duminica este prima zi a săptămânii, folosită cu %X
  • %v-Week (01-53) unde luni este prima zi a săptămânii, folosită cu %x
  • %W-numele zilei săptămânii (duminică-sâmbătă)
  • %w-zi a săptămânii (0=duminică, 6=sâmbătă)
  • %X-An pentru săptămâna în care duminica este prima zi a săptămânii, patru cifre, utilizate cu %V
  • %x-An pentru săptămâna în care luni este prima zi a săptămânii, patru cifre, utilizate cu %v
  • %Y-Year, numeric, patru cifre
  • %y-Year, numeric, două cifre