Interogări de selecţie lect. univ. Tîrşu Valentina
Obiective: să identifice cele mai utile instrumente de proiectare a unei interogări; să definească necesitatea utilizării interogărilor de tip Select la selectarea şi modificarea informaţiei din tabele; să proiecteze interogări adecvate pentru probleme formulate spre rezolvare; să aplice corect expresiile logice de selectarea a informaţiei; să utilizeze expresii logice complexe (în mai multe rânduri cu condiţii de selectare); să efectueze anumite calcule asupra datelor extrase din tabelele cu informaţie primară; să proiecteze interogări de totalizare a informaţiei extrase conform unor criterii complexe de selectare, prin îmbinarea diferitor funcţii de calcule pe grup.
Agenda 1. Tipuri de interogari 2. Proiectarea interogărilor de selecţie în regim design 3. Selectarea datelor prin intermediul interogărilor de selecţie 4. Clasificarea interogărilor de selecţie
1. Tipuri de interogari Interogarea bazei de date rezultă regăsirea şi extragerea datelor stocate în aceasta, într-un mod util scopului urmărit. Rezultatul unei interogări reprezintă o foaie de răspuns dinamic,care nu mai există fizic după închiderea interogării. O interogare poate fi creată în următoarele moduri: Crearea pas cu pas în modul Design view (fereastră de proiectare) Utilizând instrumentul Wizard Exprimarea cererii în limbaj SQL Crearea unui filtru şi salvarea acestuia ca cerere de interogare.
Tipuri de interogări: Tipuri de interogari 1a) o interogări de selecţie (select query) afişează datele din mai multe tabele şi nu permite actualizarea datelor. 1b) o interogare de selcţie reprezintă o descriere a înregistrărilor care urmează a fi extrase dintr-o bază de date. 2) o interogare cu parametru (parameter query) permit solicitarea unei singure informaţie care este utilizată în calitate de criteriu de selecţie în interogare. 3) o interogare încrucişat[ (crosstab query) afişează valori rezumative (sume, medii...) pentru un câmp al unui tabel şi le grupează în funcţie de setul de câmpuri listate.
Tipuri de interogari 4) interogări de acţiune (Action query) execută operaţii cu înregistrările care respectă criteriile impuse şi are efect asupra datelor din baza de date: a)interogări de lichidare (Delete) lichidează înregistrările care respectă criteriile setate; b)interogări de actualizare (Update) efectuează modificări în înregistrările care respectă criteriile setate; c)interogări de adăugare (Append) adaugă înregistrări noi la sfârşitul unui tabel; d)interogări de tip Make Table creează tabele noi bazate pe înregistrările care respectă criteriile de selecţie.
2. Proiectarea interogărilor de selecţie în regim design 1. MODUL DE CREARE A INTEROGĂRII 2. ANEXAREA TABELELOR LA INTEROGARE
Proiectarea interogărilor de selecţie în regim design SURSA DE DATE CÂMPURI SELECTATE SAU CALCULATE MODURI DE SORTARE AFIŞAREA CÂMPULUI ÎN REGIM DATASHEET CRITERII DE SELECŢIE
Proiectarea interogărilor de selecţie în regim design Fereastra constructorului de interogări două panouri: este divizată în panoul superior afişează tabelele incluse în interogare şi relaţiile dintre tabel; panoul inferior numit grila interogării include: Field: pentru plasarea câmpurilor din tabele sau scrierea expresiile câmpurilor calculate; Table: tabelul din care provine câmpul; Sort: dacă interogarea este sortată pe baza câmpului respectiv; Show: dacă este afişat câmpul în rezultatul interogării; Criteria: criteriile care au fost aplicate câmpului pentru a limita rezultatele interogării.
3. Selectarea datelor prin intermediul interogărilor de selecţie La creare criteriilor de selecţie se utilizează următorii operatori: Operatori aritmetici: +, -, /, \. *, ^, mod; Operatori relaţionali: <, >, =, <=, >=, <>; Operatori logici: Or, And, Not, Like, In, Between; Constante: numerice: (120, 5, ), texte( Text ), date calendaristice (#12/10/2011#).
Selectarea datelor prin intermediul interogărilor de selecţie Operatorul logic OR se utilizează pentru a indica câteva condiţii de selecţii pentru un oarecare câmp, câmpul este selectat dacă satisface cel puţin un criteriu de selecţie. Exemplul 1: Dacă în câmpul Contract din grila interogării se include D- 259 or D-457, programul va selectată informaţia despre persoanele ce au încheiat contractele respective.
Operatori logici O altă formă de scriere a criteriilor de selecţie Rezultatul rulării interogării
Operatori logici Operatorul logic AND se utilizează pentru a indica câteva condiţii de selecţii pentru un oarecare câmp, câmpul este selectat dacă satisface toate criteriile de selecţie. Exemplul 2: Înscrierea condiţiei >10 and <50 în câmpul Pret, va indica selectarea înregistrărilor ce au preţul pachetului din segmentul 10-50. Rezultatul rulării interogării
Operatori logici Pentru a uni, cu operatorul And, mai multe condiţii de selecţie ce sunt adresate diferitor câmpuri, acestea urmează să fie înscrise în acelaşi rând. Exemplul 3: Ce sume de bani a achitat abonatul cu contractului D-457 pentru primele trei luni ale anului. Rezultatul rulării interogării
Operatori logici Operatorii OR şi AND sunt utilizaţi cât separat atât şi în combinaţii. Exemplul 4: Ce sume de bani au achitat abonaţii cu contractului D-457 şi D-517 pentru luna februarie.
Operatori logici Proiectul interogării poate fi prezentat şi astfel: Rezultatul rulării interogării
Operatori logici Operatorul BETWEEN permite să se indice un interval de valori. Exemplul 5: expresia >=#01.03.2013# And <=#01.04.2013# este echivalentă cu înscrierea between #01/03/2013# and #01/04/2013#. Operatorul logic NOT şi relaţional <> (diferit) se utilizează pentru excluderea grupului de date din componenţa înregistrărilor analizate de interogare: Exemplul 6: Not D-257 sau <> 2.
Operatori logici Operatorul LIKE este utilizat pentru crearea şabloanelor de căutarea în câmpurile textuale: * indică orice cantitate de simboluri;? un singur simbol; # indică că pe poziţia dată trebuie să fie o cifră. Exemplul 7: pentru alegerea numelui unui abonat (Albu), ce încep cu A şi se termină cu u putem nota: like A*u.
Câmpuri calculate Pentru a defini câmpuri calculate, în rândul Field al interogării se introduce formula de calcul: etichetele de câmp utilizate în expresie se i-au în paranteze pătrate. Exemplu de expresii: abonat: [nume]& &[prenume] pret nou:[pret]*1.2 Funcţii standard utilizate la crearea câmpurilor calculate: date(), year(), len(),....
Câmpuri calculate Exemplul 8: Se cere de recalculat preţul nou care s-a mărit cu 20%. Rezultatul rulării interogării
Câmpuri calculate Exemplul 9: Afisarea informatiei despre abonati Rezultatul rulării interogării
Interogări de totalizare Interogările ce includ rândul total sunt numite interogări de totalizare 1. Butonul TOTALS 2. Rândul TOTAL 3. Lista funcţiilor predefinite
Interogări de totalizare Rândul Total: include următoarele funcţii predefinite: Avg media aritmetică; Count numărul total de valori; First prima valoare; Last ultima valoare; Max valoarea maximă; Min valoarea minimă; StDev deviaţia standard a valorilor; Sum suma valorilor; Var variaţia valorilor.
Interogări de totalizare În lista funcţiilor predefinite pot fi găsite şi următoarele opţiuni: Opţiunea Group By se va utiliza pentru a defini criteriile de grupare. Ordinea de evaluare a criteriilor de grupare este de la stânga la dreapta. Opţiunea Where se aplică dacă câmpul este utilizat pentru a preciza anumite criterii de selecţie, dar nu se doreşte efectuarea grupării după câmpul respectiv. Opţiunea Expression se va utiliza pentru câmpurile calculate ce returnează un singur rezultat la nivelul grupului.
Interogări de totalizare Interogările de totalizare esenţial se deosebesc de interogările obişnuite. În ele câmpurile pot fi divizate în trei tipuri: 1) câmpuri, pentru care se realizează gruparea datelor; 2) câmpuri, care participă la calcule; 3) câmpuri, care conţin condiţii.
Interogări de totalizare Exemplul 10: Să se calculeze sumele încasate pentru fiecare pachet în lunele februarie, martie, aprilie. Rezultatul rulării interogării
4. Clasificarea interogărilor de selecţie Interogări de tipul I sunt interogările ce nu conţin rândul total. Ele conţin câmpuri calculate şi criterii de selecţie. 1. Stabiliţi lista abonaţilor din sectorul B. Rezultatul rulării interogării
4. Clasificarea interogărilor de selecţie Spre deosebire de interogările de I tip, interogările de tipul II în grila interogării includ rândul Total şi gruparea se face după un singur câmp. 1. Care a fost prima zi în care abonatul Albu a efectuat achitarea serviciilor acordate. Rezultatul rulării interogării
4. Clasificarea interogărilor de selecţie Spre deosebire de celelalte 2 tipuri, interogarea de tipul III are gruparea pentru 2 şi mai multe câmpuri. 1. Sumele totale achitate pentru fiecare lună, fiecare pachet de anumiţi trei abonaţi.
4. Clasificarea interogărilor de selecţie Rezultatul rulării interogării