Datumske funkcije u SQL-u

Datumske funkcije u SQL-u

Datumske funkcije u SQL-u omogućavaju rad sa vremenskim i datumskim vrednostima, koje su ključne u poslovnim analizama i izveštavanju. SQL ima veliki broj ugrađenih funkcija koje nam olakšavaju rad sa datumima, poput dobijanja tekućeg datuma, izdvajanja pojedinačnih delova datuma, kao i manipulisanja datumima kroz dodavanje ili oduzimanje dana, meseci i godina.

Evo pregleda osnovnih datumski funkcija u SQL-u i primera njihove primene.

1. GETDATE()

GETDATE() vraća tekući datum i vreme servera. Korisna je kada želimo da pratimo vreme unosa podataka ili generišemo izveštaje sa trenutnim datumom.

SELECT GETDATE() AS TrenutniDatum;

Datumske funkcije u SQL-u

Rezultat: vraća trenutni datum i vreme (npr. 2024-11-08 10:34:59.447).

2. CURRENT_TIMESTAMP

CURRENT_TIMESTAMP je još jedna funkcija koja vraća tekući datum i vreme servera, slična kao GETDATE().

SELECT CURRENT_TIMESTAMP AS TrenutniDatum;

Datumske funkcije u SQL-u

Rezultat: trenutni datum i vreme servera (npr. 2024-11-08 10:36:11.747).

3. DATEADD()

DATEADD() omogućava dodavanje ili oduzimanje određenih vremenskih intervala (kao što su dani, meseci, godine) datuma. Sintaksa funkcije je DATEADD(interval, broj, datum).

Primer: Dodavanje 10 dana trenutnom datumu.

SELECT DATEADD(DAY, 10, GETDATE()) AS NoviDatum;

Datumske funkcije u SQL-u

Rezultat: datum koji je 10 dana nakon tekućeg datuma (npr. 2024-11-18 10:38:20.860).

4. DATEDIFF()

DATEDIFF() vraća razliku između dva datuma u odabranom vremenskom intervalu. Sintaksa je DATEDIFF(interval, datum1, datum2).

Primer: Razlika u danima između dva datuma.

SELECT DATEDIFF(DAY, ‘2024-01-01’, ‘2024-11-08’) AS RazlikaUDanima;

Datumske funkcije u SQL-u

Rezultat: broj dana između 1. januara 2024. i 8. novembra 2024. (u ovom slučaju 312).

5. DATEPART()

DATEPART() vraća određeni deo datuma (kao što je godina, mesec, dan). Ovo je korisno kada nam je potreban samo jedan deo datuma za analizu ili poređenje.

Primer: Dobijanje meseca iz datuma.

SELECT DATEPART(MONTH, ‘2024-11-08’) AS Mesec;

Datumske funkcije u SQL-u

Rezultat: 11 (novembar).

6. DATENAME()

DATENAME() vraća ime određenog dela datuma (npr. ime dana ili meseca). Ova funkcija je korisna za generisanje tekstualnih izveštaja gde su potrebna imena, a ne numeričke vrednosti.

Primer: Dobijanje imena dana u nedelji.

SELECT DATENAME(WEEKDAY, ‘2024-11-08’) AS DanUNedelji;

Datumske funkcije u SQL-u

Rezultat: Friday.

7. FORMAT()

FORMAT() omogućava formatiranje datuma i vremena u željeni format. Sintaksa je FORMAT(datum, ‘format’).

Primer: Formatiranje datuma u dd-MM-yyyy.

SELECT FORMAT(GETDATE(), ‘dd-MM-yyyy’) AS FormatiraniDatum;

Datumske funkcije u SQL-u

Rezultat: prikazuje trenutni datum u formatu 08-11-2024.

Praktična primena datuma u upitima:

Datumi su često korišćeni za filtriranje podataka, analizu trendova po vremenskim periodima i generisanje vremenskih izveštaja.

Primer: Prikaz svih porudžbina iz poslednjih 12 meseci.

SELECT *
FROM Orders
WHERE Order_Date >= DATEADD(MONTH, -12, GETDATE());

Datumske funkcije u SQL-u

Ove funkcije su samo početak kada je rad sa datumima u SQL-u u pitanju, ali predstavljaju osnovu za manipulaciju i analizu podataka baziranih na vremenskim intervalima.

Leave a comment

Your email address will not be published. Required fields are marked *