Subinterogari Subqueries in Microsoft Access
Pasul 1.
Subinterogarile reprezinta o tehnica foarte puternica prin care putem extrage informatii relevante din baza de date.
Ne propunem ca, din tabelul Clienti, sa extragem toti clientii al caror venit lunar este mai mare decat media veniturilor din acest tabel. Va trebui sa calculam aceasta medie si sa folosim valoarea calculata ca si criteriu de extragere a datelor.
Subinterogarile nu se pot executa “din prima” ci ele sunt depentente de o alta interogare.
In exemplele care urmeaza, vom utiliza limbajul SQL pentru a crea interogarile.
Pasul 2.
Pornim de la baza de date cu cele trei tabele, Clienti, Produse si TRANZACTII.
Din tab-ul Create, grupul Queries, alegem optiunea Query Design. Adaugam tabelul Clienti, selectandu-l in caseta Show Table si apasand butonul Add. Inchidem apoi caseta Show Table.
Toate operatiile pe care le facem in designer-ul de interogari sunt traduse intr-un limbaj nativ al Access-ului, SQL – Structured Query Language. Daca invatati acest limbaj, veti putea evita limitarile interfetei Query Design si, in acelasi timp, veti reusi sa realizati interogari foarte complexe. De exemplu, Query Design nu are suport pentru Subinterogari.
Pasul 3.
Intram, asadar in vizualizarea SQL View, apasand click-dreapta in zona superioara din Query Design sau alegand aceasta vizualizare din lista derulanta View.
In fereastra SQL View, scriem expresia de calcul pentru media veniturilor:
SELECT Avg(Venit_Lunar) AS Media
FROM Clienti;
Apasand butonul Run, va aparea, in vederea Datasheet View, valoarea calculata a mediei.
Pasul 4.
Revenim in vizualizarea SQL View si vom completa expresia scrisa astfel:
SELECT * from Clienti
WHERE Venit_Lunar>= (SELECT Avg(Venit_Lunar) AS Media FROM Clienti)
Vom apasa Run pentru a vedea rezultatul.
In acest caz, expresia dintre paranteze devine subinterogare (interogare rulata in interiorul unei alte interogari).
Leave A Comment