Oct 29, 2023

SQL Comparison (Poređenje) Operatori

Comparison operatori u SQL-u koriste se za upoređivanje vrednosti i vraćaju rezultat koji ukazuje na tačnost ili netačnost uslova. Evo nekoliko često korišćenih komparativnih operatora sa objašnjenjima na srpskom jeziku i primerima:

Jednako (=):

Operator "jednako" se koristi za upoređivanje da li dve vrednosti su iste.

    
    SELECT Ime, Prezime
    FROM Korisnici
    WHERE Grad = 'Beograd';
    
    

Različito (<>) ili (!=):

Operator "različito" se koristi za upoređivanje da li dve vrednosti nisu iste.

    
    SELECT Ime, Prezime
    FROM Korisnici
    WHERE Grad <> 'Novi Sad';
    
    

Veće od (>):

Operator "veće od" se koristi za upoređivanje da li jedna vrednost je veća od druge.

    
    SELECT Ime, Plata
    FROM Zaposleni
    WHERE Plata > 50000;
    
    

Manje od (<):

Operator "manje od" se koristi za upoređivanje da li jedna vrednost je manja od druge.

    
    SELECT Ime, Godine
    FROM Osobe
    WHERE Godine < 30;
    
    

Veće ili jednako (>=):

Operator "veće ili jednako" se koristi za upoređivanje da li jedna vrednost je veća ili jednaka drugoj.

    
    SELECT Ime, BrojPoruka
    FROM Korisnici
    WHERE BrojPoruka >= 100;
    
    

Manje ili jednako (<=):

Operator "manje ili jednako" se koristi za upoređivanje da li jedna vrednost je manja ili jednaka drugoj.

    
    SELECT Ime, Bodovi
    FROM Studenti
    WHERE Bodovi <= 60;
    
    

SQL Aritmetički Operatori

Aritmetički operatori u SQL-u omogućavaju izvođenje matematičkih operacija nad numeričkim vrednostima u upitima. Evo nekoliko često korišćenih aritmetičkih operatora sa primerima:

Sabiranje (+):

Koristi se za sabiranje dve numeričke vrednosti.

    
    SELECT Cena + Popust AS KonacnaCena
    FROM Proizvodi;
    
    

Oduzimanje (-):

Koristi se za oduzimanje jedne numeričke vrednosti od druge.

    
    SELECT UkupanIznos - Popust AS Placanje
    FROM Narudžbine;
    
    

Množenje (*):

Koristi se za množenje dve numeričke vrednosti.

    
    SELECT Cena * Količina AS UkupanIznos
    FROM StavkeNarudžbine;
    
    

Deljenje (/):

Koristi se za deljenje jedne numeričke vrednosti sa drugom.

    
    SELECT UkupanIznos / BrojStavki AS ProsečnaCena
    FROM Narudžbine;
    
    

Modulo (%):

Vraća ostatak pri deljenju dve numeričke vrednosti.

    
    SELECT Broj % 2 AS Ostatak
    FROM Tabela;
    
    

SQL CASE klauzula

CASE (SLUČAJ) klauzula u SQL-u se koristi za implementaciju uslovnih izraza u upitima. Omogućava vam da definišete različite radnje ili vrednosti na osnovu ispunjenja određenih uslova. CASE može biti korisna za izbor različitih vrednosti za istu kolonu ili za kreiranje dodatnih kolona na osnovu uslovnih provera.

Primer korišćenja CASE:

Korišćenje CASE klauzule za dodelu ocene "Prolaz" ili "Pad" na osnovu rezultata ispita.

    
    SELECT Ime, Rezultat,
      CASE
        WHEN Rezultat >= 50 THEN 'Prolaz'
        ELSE 'Pad'
      END AS Ocena
    FROM Ispiti;
    
    

Ovaj upit će dodati kolonu "Ocena" koja će sadržavati vrednost "Prolaz" ako je rezultat veći ili jednak 50, inače će sadržavati vrednost "Pad".

Korišćenje CASE klauzule sa više uslova za dodelu ocene "Odličan", "Dobar", "Prosečan" ili "Nedovoljan" na osnovu rezultata ispita.

    
    SELECT Ime, Rezultat,
      CASE
        WHEN Rezultat >= 90 THEN 'Odličan'
        WHEN Rezultat >= 70 THEN 'Dobar'
        WHEN Rezultat >= 50 THEN 'Prosečan'
        ELSE 'Nedovoljan'
      END AS Ocena
    FROM Ispiti;
    
    

Ovaj upit će dodati kolonu "Ocena" koja će sadržavati vrednosti "Odličan", "Dobar", "Prosečan" ili "Nedovoljan" u zavisnosti od vrednosti u koloni "Rezultat". Na osnovu različitih uslova, različite ocene će biti dodeljene.