SQL – Osnovno spajanje tabela

Jedna od najveฤ‡ih prednosti jezika SQL je njegova moguฤ‡nost da spaja i manipuliลกe podacima koji se nalaze u viลกe razliฤitih izvornih tabela. U velikoj veฤ‡ini sluฤajeva upiti se ne izvrลกavaju samo nad jednom tabelom, veฤ‡ nad viลกe njih koje je potrebno na neki od naฤina, spojiti. Da nema ove moguฤ‡nosti, trebali bi smo da sve moguฤ‡e podatke stavimo u jednu jedinu tabelu. Ali, gde je onda tu relacioni model?

Kao uvod u ovu ลกiroku temu, prvo ฤ‡emo objasniti najjednostavnije spajanje dve tabele uz pomoฤ‡ SELECT naredbe. Za ovu potrebu, kreiraฤ‡emo dve tabele sa recimo dva polja (kao u gornjem delu slike). U prva polja obe tabele ฤ‡emo ubaciti identifikacione oznake za svaki slog u datoj tabeli, a u drugom polju ฤ‡e biti oznake samih tabela (radi kasnije identifikacije). A sada ฤ‡emo postaviti i osnovi upit za spajanje dve tabele:


SELECT *
FROM Tabela1,Tabela2;

Ovim upitom vrลกimo izbor svih dostupnih polja iz obe tabele. Rezultat upita je prikazan u donjem delu slike. ล ta se dogodilo? Od po tri sloga u svakoj tabeli, nastalo je devet rezultujuฤ‡ih. Ali pogledajte malo bolje u rezultat, i videฤ‡ete da je svakom slogu prve tabele pridruลพen svaki od slogova druge tabele, ลกto znaฤi 3 puta 3. Na ovaj naฤin kreirali smo prvi upit za spajanje tabela, koji se joลก naziva i „cross-join„. Ova vrsta spajanja tabela nema neki znaฤaj u svakodnevnom radu, ali je dobra za ilustraciju osnovne osobine svih spajanja – spajanje dve tabele (ili viลกe njih) u jednu.

Pratite Krstaricu na www.krstarica.com