Oct 29, 2023

SQL Komentari

Komentari u SQL-u su tekstualni delovi koji služe za dodatna objašnjenja i dokumentaciju upita ili skripte. Postoje dva tipa SQL komentara:

Jednolinijski komentari:

Ovi komentari počinju sa znakom dvostrukih crta (--) i obuhvataju sve do kraja reda.

    
    SELECT Ime, Prezime -- Ovde biramo imena i prezimena
    FROM Zaposleni;
    
    

Višelinijski komentari:

Ovi komentari počinju sa /* i završavaju se sa */. Mogu obuhvatiti više redova i koriste se za dodavanje detaljnijih komentara.

    
    /* 
    Ovo je primer upita koji 
    bira sve zaposlene iz tabele Zaposleni.
    */
    SELECT Ime, Prezime
    FROM Zaposleni;
    
    

SQL NULL funkcije

NULL funkcije omogućavaju vam da obradite NULL vrednosti u SQL upitima. Evo nekoliko često korišćenih NULL funkcija sa objašnjenjima i primerima:

IS NULL poređenje:

Ova funkcija se koristi da proveri da li je određena vrednost NULL.

    
    SELECT Ime, Prezime
    FROM Zaposleni
    WHERE Plata IS NULL;
    
    

Ovaj upit će izabrati sve zaposlene čija plata ima NULL vrednost.

ISNULL() funkcija:

ISNULL() funkcija se koristi za proveru da li je određena vrednost NULL ili ne. Ako je vrednost NULL, funkcija će vratiti 1 (tačno); inače će vratiti 0 (netačno).

    
	SELECT Ime, Prezime
    FROM Zaposleni
    WHERE ISNULL(Plata, 0) = 0;
    
	

Ovaj upit će izabrati imena i prezimena zaposlenih čija plata nije NULL ili gde je plata NULL, ali će se zameniti nulom (0).

COALESCE funkcija:

COALESCE funkcija se koristi da odabere prvu "ne-NULL" vrednost iz niza vrednosti.

    
    SELECT Ime, COALESCE(Adresa, 'Nepoznato') AS Adresa
    FROM Klijenti;
    
    

Ovaj upit će izabrati imena klijenata i, ako adresa nije NULL, prikazati adresu, inače će prikazati "Nepoznato".

NULLIF funkcija:

NULLIF funkcija se koristi da poredi dve vrednosti. Ako su vrednosti jednake, funkcija će vratiti NULL.

    
    SELECT Ime, NULLIF(Status, 'Nedostupan') AS Status
    FROM Korisnici;
    
    

Ovaj upit će izabrati imena korisnika i, ako je status "Nedostupan", prikazati NULL, inače će prikazati stvarni status.

IFNULL funkcija (za MySQL):

IFNULL funkcija se koristi za zamenjivanje NULL vrednosti drugom vrednošću.

    
    SELECT Ime, IFNULL(Adresa, 'Nepoznato') AS Adresa
    FROM Klijenti;
    
    

Ovaj upit će izabrati imena klijenata i, ako adresa nije NULL, prikazati adresu; inače će prikazati "Nepoznato".

NVL funkcija (za Oracle baze):

NVL funkcija se koristi za zamenjivanje NULL vrednosti drugom vrednošću.

    
    SELECT Ime, NVL(Adresa, 'Nepoznato') AS Adresa
	FROM Klijenti;
    
    

Ovaj upit će izabrati imena klijenata i, ako adresa nije NULL, prikazati adresu; inače će prikazati "Nepoznato".

SQL NULL vrednost

NULL označava odsustvo vrednosti u SQL-u. To ne znači da je vrednost nula, već da vrednost nije ni poznata ni definisana. Evo nekoliko primera:

Primer 1: Dodavanje zapisa bez vrednosti

Ako se pri dodavanju zapisa u tabelu određena kolona ne popuni vrednošću, ta kolona će imati NULL vrednost.

    
    INSERT INTO Korisnici (Ime, Prezime, Telefon) 
    	VALUES ('Ana', 'Ivanović', NULL);
    
    

Primer 2: Nedostajući podaci

Kada neki podaci nisu dostupni ili nisu uneti, NULL se koristi da označi te praznine.

Primer 3: Neobavezne kolone

U slučaju kada kolona nije obavezna za unos (nije definisana kao NOT NULL), NULL se može koristiti da označi odsustvo vrednosti.

Primer 4: Nedefinisane vrednosti

Kada vrednost nije primenjiva ili nije definisana za određeni zapis, NULL se koristi da označi ovu situaciju.

Važno je napomenuti da NULL nije isto što i prazan string ('') ili nula (0). NULL označava odsustvo vrednosti, dok prazan string i nula predstavljaju konkretnu vrednost.