SQL – Select… From

Najbitniji elementi jednog upita su kljuฤne reฤi. U zavisnosti od vrste upita, odreฤ‘ene kljuฤne reฤi mogu biti obavezne, ali to nije uvek sluฤaj. Kako budete duลพe koristili SQL, videฤ‡ete da se kljuฤne reฤi „SELECT“ i „FROM“ najฤeลกฤ‡e pojavljuju. Zato ฤ‡emo i poฤeti sa kljuฤnom reฤju „SELECT“, jer najveฤ‡i broj SQL iskaza poฤinje sa ovom reฤju. Sintaksa glasi:


SELECT <nazivi kolona-polja>

Kada bi naveli iskaz samo navoฤ‘enjem kljuฤne reฤi i naziva polja (npr. „SELECT;“), dobili bi poruku o greลกci, jer ova kljuฤna reฤ nikada se ne koristi sama za sebe.


SELECT
*
ERROR at line 1:
ORA-00936: missing expression

Ovako bi izgledala poruka o greลกci, gde znak „*“ oznaฤava da neลกto nedostaje. A nedostaje upravo kljuฤna reฤ „FROM“. Sintaksa glasi:


FROM <tabela1, tabela2…>

Iza kombinacije kljuฤnih reฤi „SELECT“ i „FROM“ leลพi ฤitava snaga sistema za upravljanje bazama podataka. U sledeฤ‡em primeru imamo tabelu „cekovi“ u kojoj se prati realizaciju ฤekova (kao na slici). Postaviฤ‡emo naลก prvi konkretan upit:

SELECT * FROM cekovi;

Kao rezultat vratiฤ‡e se svi slogovi iz tabele „cekovi“, i to iz svih polja. Znak „*“ zamenjuje sve nazive polja u jednoj tabeli i na taj naฤin nam skraฤ‡uje vreme pisanja upita. Zapazite na kraju upita i znak „;“ taฤka-zarez, koji govori interpreteru da je tu kraj jednom upitu, ali ovaj znak nije obavezan u svim implementacijama SQL-a (npr. Microsoft SQL, Borland ISQL). U sluฤaju da upit napiลกemo ovako:


SELECT Iznos, Datum, Cek FROM cekovi;

Upit ฤ‡e vratiti podatke izlistane tako da je raspored kolona obrnut. Da vam odmah prikaลพemo i drugi naฤin pisanja upita:


SELECT Iznos, Datum, Cek
FROM cekovi;

Ako ovako napiลกemo upit, dobiฤ‡emo isti rezultat, ali je ovako mnogo preglednije, posebno kada budete pisali vrlo sloลพene upite.

U sluฤaju da vam ne trebaju sva polja iz tabele, nego da ลพelite da se koncentriลกete samo na broj ฤeka i iznos, napisaฤ‡ete sledeฤ‡i upit:


SELECT Cek, Iznos FROM cekovi;

Dobiฤ‡ete rezultat kao na slici. Sada ฤ‡emo naลก osnovni upit proลกiriti kljuฤnom reฤju „Distinction“, zapazite da se u polju „Iznos“ pojavljuju dva sloga iste vrednosti – 250,00. Kljuฤnu reฤ „Distinction“ koristimo kada ลพelimo da nam se iz odreฤ‘enog polja vrate samo razliฤite vrednosti. Ako postavimo sledeฤ‡i upit:


SELECT DISTINCT Iznos FROM cekovi;

Iz rezultujuฤ‡eg skupa podataka biฤ‡e izbaฤeni svi slogovi koji se ponavljaju.

Pratite Krstaricu na www.krstarica.com