Documente Academic
Documente Profesional
Documente Cultură
● Operatori relaționali:
○ operatori unari, care se aplică unei singure relații/
tabele;
○ operatori binari, care se aplică pentru două realții/
tabele.
Interogarea bazei de date
● are la bază algebra relațională ➜operatorii relaționali;
într-o interogare se pot aplica unul sau mai mulți operatori
● permite regăsirea și extragerea informațiilor din baza de
date;
● asigură ordonarea datelor după anumite criterii;
● efectuarea de calcule;
● actualizarea bazei de date (prin interogări de tip acţiune);
● pregătirea datelor în vederea prezentării lor în interfața
cu utilizatorul (formulare sau rapoarte);
● etc.
Interogarea bazei de date în Microsoft Access
● Sursa unei interogări: unul sau mai multe tabele și/sau
alte interogări
● Interogarea nu stochează date – rezultatele sunt
generate dinamic și dispar din memorie după
închiderea interogării
● În baza de date se stochează doar definiția interogării
● Există și interogări speciale care acționează asupra
datelor/tabelelor în sensul creării/modificării/ștergerii.
Acestea nu furnizează rezultate explicite către utilizator
Interogări Microsoft Access - categorii de bază
● Interogări/cereri de selecție – extragerea datelor din
una sau mai multe tabele și/sau interogări realizate
anterior precum și efectuarea de calcule
● Interogări/cereri de analiză încrucișată – sintetizarea
datelor și a rezultatelor obţinute din calcule, sub
forma unei foi de calcul tabelar (asemănător cu
tabelul pivot din Excel)
● Interogări/cereri de tip acțiune – creare de noi tabele
și de actualizare a bazei de date
Interogări/cereri de selecție Microsoft Access
● Sunt cele mai întâlnite în exploatarea unei baze de
date
2
Interfața QBE - Query Design
Interfața QBE - rezultatele
Operatorii relaţionali de bază - operatori unari
● Proiecția
● Selecția
Operatori unari - proiecția
● Proiecţia unei relaţii/tabele T cu o anumită structură de
atribute, după un set de atribute din cadrul acesteia este
o altă relaţie/tabelă T1, care va avea ca structură setul de
atribute aplicate prin proiecție. Înregistrările/tuplurile
relației/tabelei T1, obținute prin proiecție, sunt cele din
relația/tabela inițială T, mai puțin atributele și valorile
care nu fac parte din criteriul de proiecție. Înregistrările/
tuplurile duplicat pot fi eliminate sau nu, în funcție de
scop.
T= PROIECTIEC (T1)
Operatori unari - exemplu proiecție Access
Proiecție aplicată pe tabelul Client, după atributele
DenumireClient, OrasClient
Operatori unari - exemplu proiecție Access
Proiecție aplicată pe tabelul Client, după atributele
DenumireClient, OrasClient
Operatori unari - rezultat proiecție Access
Proiecție aplicată pe tabelul Client, după atributele
DenumireClient, OrasClient
Query1= PROIECTIEDenumireClient, OrasClient (Client)
Operatori unari - selecția
● Selecția aplicată unei relaţii/tabele T cu o anumită
structură de atribute, înseamnă aplicarea unui criteriu C
asupra valorilor atributelor specificate în criteriu. În urma
aplicării selecției rezultă o altă relaţie/tabelă T1, care va
avea ca structură aceleași atribute ca în relația/tabela
inițială T. Înregistrările/tuplurile relației/tabelei T1,
obținute prin selecție, sunt cele din relația/tabela inițială T,
rezultate prin aplicarea criteriului C.
T= SELECTIEC (T1)
Operatori unari - exemplu selecție Access
● Selecție aplicată tabelului Client, după criteriul
OrasClient="Bucuresti" or OrasClient="Brasov"
val1 şi val2.
• Exemplu: pentru atributul Pret criteriul de selecţie BETWEEN 100 AND 700 va
Exemplu
ADAOS: IIF(PRET >100, PRET*10/100, PRET*5/100) definește un
câmp calculat ADAOS cu valori de 10% din preţ, pentru mărfurile
ce au preţul mai mare de 100 si valori de 5% din preţ, pentru
mărfurile ce au preţul mai mic sau egal cu 100.
Operatorii relaţionali - operatori binari
● Produsul cartezian
● Reuniunea
● Intersecția
● Diferența
● Compunerea (join)
● Diviziunea (împărțirea)
Operatori binari- produsul cartezian
● Produsul cartezian a două relaţii/tabele T1 şi T2
(T1xT2) este o relaţie/tabelă T care stochează mulţimea
perechilor obţinute prin concatenarea înregistrărilor
aparţinând lui T1 cu cele aparţinând lui T2.
Client x Produs = ?
5x4=?
Operatori binari- exemplu produs cartezian
● Pentru a obține produs cartezian, în QBE tabelele se
plasează fără legături
● Dacă se aplică condiția
CodProdus=1, ce combinție de
operatori avem?
Operatori binari- exemplu produs cartezian
Operatori binari- compunerea
● Compunerea (join) a două relaţii/tabele T1 şi T2, unde
T1 este formată din n atribute/coloane şi T2 este formată
din m atribute/coloane, are ca rezultat o a treia relaţie/
tabelă T, produsul cartezian al celor două tabele sursă,
fiind alese doar acelea care îndeplinesc o anumită
condiţie specificată în cadrul compunerii. Numărul de
atribute/coloane ale rezultatul compunerii este m+n.
=
Operatori binari- Compunerea
= AND MaxCifraAfaceri
Operatori binari- exemplu compunere
● Pentru a obține produs cartezian, în QBE tabelele se
plasează fără legături
Operatori binari- echicompunerea
● EchiCompunerea este compunerea pentru care condiţia
este alcătuită numai din egalităţi, putând conţine una sau
mai multe egalităţi. În cazul echicompunerii, în tabela
rezultat apar două câmpuri ce au valori identice.
Operatori binari- EchiCompunerea
JOINClient.codClient=Comanda.CodClient
=
Operatori binari- exemplu echicompunere
● Pentru a obține produs cartezian, în QBE tabelele se
plasează fără legături
Operatori binari- exemplu echicompunere
● Pentru a obține echicompunere, în QBE tabele vor fi legate
Operatori binari- compunerea externă
● Compunerea externă este o echicompunere dar care,
spre deosebire de aceasta, afişează şi tuplurile care nu
au corespondent în cadrul celor două tabele sursă
LEFT JOINClient.OrasClient=
Oras.Oras
=
Operatori binari- exemplu compunerea externa
(LEFT JOIN)
Operatori binari- compunerea externă
● Compunerea externă este o echicompunere dar care,
spre deosebire de aceasta, afişează şi tuplurile care nu
au corespondent în cadrul celor două tabele sursă
RIGHT JOINClient.OrasClient=
Oras.Oras
=
Operatori binari- exemplu compunerea externa
(RIGHT JOIN)
Tipuri de legaturi (JOIN) in ACCESS - INNER JOIN
Tipuri de legaturi (JOIN) in ACCESS - LEFT JOIN
Tipuri de legaturi (JOIN) in ACCESS - RIGHT JOIN
QBE Exemple - Legături între tabele
Să se afișeze clienții care nu au comenzi.