Interogări (Query)

Interogările reprezintă modalităţi de selecţie şi afişare a informaţie din unul sau mai multe surse (tabele sau alte interogări), formulate cu ajutorul unor condiţii logice.

Tipuri de interogări

În funcţie de modul de definire şi rezultatele acţiunii, interogarile pot fi clasificate astfel:
  1. interogări simple sau de selecţie (folosind condiţii logice);
  2. interogări pentru actualizare - delete query, update query şi append query;
  3. interogări încrucişate sau bidimensionale.
Rezultatul interogării este un nou set de date, numit set dinamic (engl: Dynaset). Setul dinamic (rezultalul interogării) conţine doar câmpurile specificate ale înregistrarilor din tabelele specificate care satisfac condiţiile specificate. Denumirea '"Set dinamic" este legată de faptul că orice modificări ale datelor din tabelele specificate în interogare implică modificări corespunzătoare ale rezultatului interogării (la o nouă executare a ei) şi invers, orice modificări în setul dinamic implică modificări în tabelele respective (cu condiţia respectării integrităţii datelor). Seturile de date dinamice nu se memorează; ele se formează din nou de fiecare dată când executăm o interogare. Dacă în tabelele bazei de date intervin modificări, rezultatele executării a două interogari identice pot fi diferite.

Crearea unei interogări simple (de selecţie a înregistrărilor -Select Query)


Pentru a defini o interogare de selecţie selectăm opţiunea Queries din fereastra Database, apoi butonul Create query in design view.
external image cerc52.jpg
Ca efect, va apărea fereastra alăturată, din care selectăm consecutiv (în orice ordine) tabelele necesare şi pentru fiecare acţionăm butonul Add. După selectarea tabelelor / interogărilor acţionăm butonul Close.
external image cerc53.jpg
În situaţia în care, după ce au fost stabilite sursele care vor fi interogate, dorim să revenim asupra lor şi să le schimbăm, avem la dispoziţie opţiunile meniului Query, cu menţiunea că pentru a înlătura o sursă trebuie mai întâi să o selectăm şi apoi să alegem Remove:

external image cerc54.jpg
sau dăm clic dreapta pe sursă şi alegem Remove:
external image cerc55.jpg
Dacă tabelele au câmpuri comune (definite în procesul creării lor), Access stabileşte în mod automat legăturile respective. În continuare indicăm, în partea de jos a ferestrei, câmpurile din fiecare tabel (în ordinea dorită), care urmează a fi afişate sau pentru care se vor specifica condiţii de selecţie şi / sau de sortare. Includerea câmpurilor se face prin "tragerea" lor cu ajutorul mouse-ului din tabelele din caseta de sus în rândul Field al casetei de jos sau prin executarea unui dublu-clic pe denumirile respective. După aceasta, specificăm condiţiile selecţiei şi / sau ordinea sortării, în acest fel interogarea se consideră definită.
external image cerc56.jpg
În rândul Criteria din partea de jos a ferestrei specificăm condiţia selecţiei. Dacă dorim ca înregistrările să fie afişate într-o anumită ordine (crescătoare / alfabetică sau descrescătoare), pentru câmpurile respective specificăm opţiunile Ascending sau Descending în rândul Sort.


Interogarea astfel definită poate fi executată imediat în scopul obţinerii rezultatului, sau salvată pentru a fi executată ulterior. În primul caz, actionăm butonul external image cerc57.jpg(Datasheet View) din bara cu instrumente sau opţiunea Datasheet View din meniul View, în al doilea caz executăm comanda Save din meniul File. La salvarea interogării indicăm numele ei, care nu trebuie să coincidă cu numele unor tabele sau ale unor interogări definite anterior.

Interogări de acţiune: Delete Query, Update Query şi Append Query

Interogari de excludere (ştergere) a unor înregistrări (Delete Query)

  1. Creăm interogarea în modul Design View: selectăm Query din fereastra Database şi alegem modul de proiectare Design View.
  2. Includem tabela pentru care se execută interogarea.
  3. Selectăm Delete Query din meniul Query. Ca rezultat, titlul ferestrei se schimbă în Delete Query, iar în partea de jos a ferestrei apare rândul Delete.
  4. Din lista câmpurilor tabelei, care apare afisată în partea de sus a ferestrei, selectăm câmpurile care vor fi afişate în interogaresau pentru care vor fi specificate condiţii de selecţie şi le "tragem" în celulele respective ale liniei Field din partea de jos. Ca rezultat, în celulele respective apare automat, pentru fiecare câmp, opţiunea Where (din engleza - Unde, ín care).
  5. Introducem în celulele liniei Criteria condiţiile selecţiei (condiţiile pe care trebuie să le îndeplinească înregistrările care vor fi şterse, în dreptul câmpului corespunzător).
  6. Pentru a obţine lista înregistrărilor care urmează a fi excluse (dar încă n-au fost excluse), vizualizăm interogarea în modul Datasheet View.
  7. Dacă rezultatele obţinute sunt cele dorite, revenim în modul Design View pentru a elimina realmente înregistrările, selectând comanda Run din meniul Query. Ca rezultat, pe ecran apare un mesaj de informare despre numărul total al inregistrarilor care urmează a fi eliminate. Dacă acţionăm butonul Yes, înregistrările vizate sunt eliminate definitiv. Pentru renunţare, acţionam butonul No.
  8. Salvăm interogarea.
Exemplu:Pentru tabela următoare:external image cerc_61.jpg
Eliminarea persoanelor care au studii "Liceale":external image cerc_62.jpg

Interogări de actualizare a înregistrărilor (Update Query)

Se utilizează în cazul în care este necesară modificarea unui număr mare de înregistrari, respectând aceeaşi modalitate de modificare. Vom descrie în continuare modul de definire a unei interogări de actualizare.
  1. Creăm interogarea în modul Design View: selectăm Query din fereastra Database şi alegem modul de proiectare Design View.
  2. Includem tabela pentru care se execută interogarea.
  3. Selectăm Update Query din meniul Query. Ca rezultat, titlul ferestrei se modifică în Update Query, iar în partea de jos apare rândul Update To.
  4. Includem (prin “tragere”) în celulele rândului Field câmpurile care dorim să apară în interogare sau cele pentru care vom stabili criterii de actualizare.
  5. Pentru ca anumite câmpuri ale tabelei să fie afişate în interogarea de actualizare trebuie să introducem în rândul Update To numele câmpului cuprins între paranteze drepte, altfel acesta nu va fi afişat. De asemenea, putem completa automat un câmp calculat, care nu a fost completat iniţial în tabelă. De exemplu, dacă avem tabela Medii, care are câmpurile: Numele şi prenumele elevului, Media sem I, Media Sem II şi Media generală, iar câmpul Media generală nu a fost completat iniţial pentru nici o înregistrare, vom trece în dreptul câmpului Media generală de pe rândul Update: ([Media sem I]+[Media sem II])/2.
    external image cerc_63.jpg
  6. Introducem în rândul Criteria condiţia pe care trebuie să o îndeplinească înregistrările care vor fi modificate.
  7. Vizualizăm interogarea în modul Datasheet View pentru a vedea modificările care se vor face. Modificările propriu-zise vor fi operate numai la revenirea în modul Design View şi executarea comenzii Run din meniul Query. ín acest caz, pe ecran va apărea un mesaj despre numarul total al înregistrărilor care urmează a fi modificate. Acţionând butonul Yes, Access va efectua modificările. Pentru a renunţa la modificări, acţionăm butonul No .
Observaţie: Interogarile de tip Update se execută, de regulă, o singură dată. ín cazul executării repetate a interogării, de exemplu aplicarea unei scumpiri de 2% la pretul unor produse, această majorare va fi realizată la fiecare execuţie a interogării.

Interogări de adăugare a înregistrărilor (Append Query)

Se utilizează în cazul în care este necesară adăugareavunui set de înregistrări dintr-o tabelă în altă tabelă. Aceasta va selecta datele care tebuie adăugate şi le va trimite în câmpurile tabelei destinaţie. Vom descrie în continuare modul de definire a unei interogări de adăugare.
  1. Creăm interogarea în modul Design View: selectăm Query din fereastra Database şi alegem modul de proiectare Design View.
  2. Includem tabela pentru care se execută interogarea.
  3. Includem (prin "tragere") în celulele rândului Field câmpurile care dorim să apară în interogare sau cele pentru care vom stabili criterii de adăugare.
  4. Selectăm Append Query din meniul Query. Indicăm tabela destinaţie.
    external image cerc65.jpg
    Ca rezultat, titlul ferestrei se modifică în Append Query, iar în partea de jos apare rândul Append To.
  5. Introducem în rândul Criteria condiţia pe care trebuie să o îndeplinească înregistrările care vor fi preluate.
  6. Precizăm pe linia Append To numele câmpului destinaţie (doar în cazul în care nu au acelaşi nume).
  7. Vizualizăm interogarea în modul Datasheet View pentru a vedea modificările care se vor face. Modificările propriu-zise vor fi operate numai la revenirea în modul Design View şi executarea comenzii Run din meniul Query.
external image cerc64.jpg

Interogari Access


Performantele unui SGBD depind în mare masura de capacitatea extragerii rapide a diferitor informatii în forma dorita. În multe cazuri este necesar de a selecta date din mai multe tabele simultan. De exemplu, pentru a selecta cartile din domeniul informaticii editate în Franta dupa anul 2001, utilizam 3 tabele: CĂRŢI, ŢĂRI si TEMATICI. Pentru a formula conditii de selectie, în MS Access exista o clasa speciala de obiecte (alaturi de tabel )numite Interogari (engl. Queries).nime: Interogari - Cereri - Interpelari.Interogarile reprezinta modalitati de selectie si afisare a informatie din unu sau mai multe tabele, formulate cu ajutorul unor conditii logice.Tipuri de interogari
În functie de modul de definire si rezultatele actiunii, interogarile pot fi clasificate astfel:
a) interogari de selectie (folosind conditii logice);
b) interogari de sortare (indicînd cîmpul/cîmpurile si ordinea sortarii);
c) interogari de excludere a unor înregistrari din BD (de exemplu,excluderea tuturor cititorilor care nu au împrumutat carti în ultimii 2 ani);
d) interogari de modificare a unor înregistrari din BD (de exemplu,majorarea preturilor tuturor car&# 14114g616o 355;ilor cu 20%);
e) interogari de obtinerea a unor informatii rezultante (în cîmpuri noi)în baza informatiei existente (de exemplu, obtinerea vîrstei cititorului prin scaderea anului de nastere din anul curent);
f) interogari de obtinere a unor totaluri, medii etc.;
g) interogari încrucisate.
În toate cazurile, cu exceptia ultimelor doua, rezultatul interogarii este un nou set de date, numit set dinamic (engl: Dynaset). Setul dinamic (rezultalul interogarii) contine doar cîmpurile specificate ale înregistrarilor din tabelele specificate care satisfac conditiilor specificate. Denumirea '"Set dinamic" este legata de faptul ca orice modificari ale datelor din tabelele specificate în interogare implica modificari respective ale rezultatului interogarii (la o noua executare a ei). si invers, orice modificari în setul dinamic implica modificari în tabelele respective (cu conditia respectarii integritatii datelor). Seturile dinamice nu se memorizeaza; ele se formeaza din nou de fiecare data cînd executam o interogare. Dac în tabelele BD intervin modificari, rezultatele executarii a doua interogari identice pot fi diferite, în cele ce urmeaza vom descrie modalitatile de definire si executare a interogarilor nominalizate.

Interogari de selectie a înregistrarilor(Select Query)Exemplu:1Pentru a defini o interogare de selectie (de exemplu, afisarea emisiunilor cu desene animate), actionam fila Queries din fereastra Database (fig. 10), apoi butonul New.external image image002.jpg

fig.10 Fereastra cu clasele de obiecte Access

În continuare indicam unul din cele 5 moduri de creare a interogarilor (în cazul nostru Design View)
Din caseta care apare (fig. 11) selectam consecutiv (în orice ordine) tabelele necesare (în cazul nostru,Emisiuni,Genuri,Canale TV) si pentru fiecare actionam butonul Add.

external image image004.jpg
fig.11 Selectarea tabelelor pentru definirea interogarii
Dupa selectarea tabelelor actionam butonul Close. Daca tabelele au cîmpuri comune (definite în procesul crearii lor), Access stabileste în mod automat legaturile respective (fig. 12). În continuare indicam, în partea de jos a ferestrei, cîmpurile din fiecare tabel (în ordinea dorita) care urmeaza a fi afisate sau pentru care se vor specifica conditii de selectie si/sau de sortare. Includerea cîmpurilor se face prin "tragerea" lor cu ajutorul mouse-ului din tabelele din caseta de sus în rîndul Field al casetei de jos sau prin executarea unui dublu-clic pe denumirile respective. Dupa aceasta specificam conditiile selectiei si/sauordinea sortarii, în acest fel interogarea se considera definita (fig. 12).


external image image006.jpg
fig12.Specificarea conditiilor de selectie
În rîndul Criteria din partea de jos a ferestrei specificam conditia selectiei Des* pentru cîmpul DenGen al tabelului Genuri. Daca dorim ca înregistrarile sa fie afisate într-o anumita ordine (crescatoare/alfabetica sau descrescatoare) pentru cîmpul respective specificam optiunile Ascending sau Descending în rîndul sort. Daca indicam Ascending pentru cîmpul DenEmisiunii al tabelului emisiuni denumirile emisiunilor vor fi afisate în ordenea alfabetica.
Interogarea astfel definita poate fi executata imediat în scopul obtinerii rezultatului (fig. 13), sau salvata pentru a fi executata ulterior. În primul caz actionam butonul external image image008.jpg (Datasheet View) din bara cu instrumente în aldoile caz executam comanda Save din meniul File. La salvarea interogarii indicam numele ei, care nu trebuie sa coincida cu numele unor tabele sau ale unor interogari definite anterior. Setul dinamic (rezultatele interogarii) contine cîmpurile marcate cu simbolul external image image010.jpg în rîndul Show al ferestrei. Celelalte cîmpuri chiar daca sunt incluse în interogare, nu se afiseaza.
external image image012.jpg
fig.13 Rezultatele interogarii


Exemplu 2. Lista emisiunilor cu durata mai mica de 30 de minute.

Pentru afisarea emisiunilor cu durata mai mica de 30 minute actionam fila Queries din fereastra Database , apoi butonul New. În continuare indicam unul din cele 5 moduri de creare a interogarilor, în cazul nostru Design View (fig.14).

fig.14

Din caseta care apare (fig.15) selectam tabelul Emisiuni,Canale TV si Genuri si actionam butonul Add.

external image image016.jpg
fig.15

Dupa selectarea tabelului actionam butonul Close. Apoi executam dublu clic pe denumirile câmpurilor si vor trece în rîndul Field din caseta de jos (fig.16).
external image image018.jpg
fig.16
Dupa aceasta specificam conditiile selectiei. În rîndul Criteria scrim conditia <30 pentru câmpul Durata Emisiunii al tabelului Emisiuni si ne va afisa lista emisiunilor cu durata mai mica de 30 minute.

external image image020.jpg
fig.17. Rezultatul interogarii

Exempul 3: Lista emisiunilor stiri
Pentru afisarea emisiunilor stiri actionam fila Queries din fereastra Database , apoi butonul New. În continuare indicam unul din cele 5 moduri de creare a interogarilor, în cazul nostru Design View (fig.14).
Din caseta care apare (fig.15) selectam tabelul Emisiuni , Genuri actionam butonul Add .Dupa selectarea tabelului actionam butonul Close.
Apoi executam dublu clic pe denumirile câmpurilor si vor trece în rîndul Field din caseta de jos (fig.18).
external image image022.jpg
fig.18

Dupa aceasta specificam conditiile selectiei. În rîndul Criteria scrim conditia "stiri" pentru câmpul DenGen al tabelului Genuri si ne va afisa lista emisiunilor stiri.
external image image024.jpg
fig.19. Rezultatul interogarii

Exemplul 4: Lista emisiunilor în limba rusa
Fie ca dorim sa afisam lista emisiunilor în limba rusa. Pentru aceasta executam urmatorii pasi:
Definim o interogare în care includem tabelele Emisiuni, Limbi, Canale TV din care selectam câmpurile DenEmisiunii, DenCanal, DenLimba (fig.20)

external image image026.jpg
fig.20
Dupa aceasta specificam criteriul de selectie în rîndul Criteria pentru câmpul DenLimba din tabelul Limbi si ne va afisa lista emisiunilor în limba rusa.
external image image028.jpg
fig.21

Interogari de sortare a înregistrarilor

Dupa ce am definit conditiile de selectie, putem stabili conditii de sortare pentru unul sau mai multe câmpuri.
Exemplu 1: Pentru afisarea emisiunilor în ordine alfabetica executam un clic în rîndul Sort al casetei (fig.22) în dreptul câmpului DenEmisiuni si din lista derulanta alegem optiunea Ascending.

external image image030.jpg
fig.22

Pentru a afisa rezultatul interogarii (fig.23), actionam butonul external image image008.jpg (Datasheet View) din bara cu instrumente.
external image image032.jpg
fig.23

Sortarea datelor poate fi facuta si fara a specifica conditii de selectie. În acest caz se vor afisa toate înregistrarile, dar ordinea lor va corespunde conditiilor stabilite în rîndul Sort pentru câmpurile respective.


Exemplu 2: Lista emisiunilor în ordinea duratei lor.

Pentru afisarea emisiunilor în ordine duratei lor executam un clic în rîndul Sort al casetei (fig.24) în dreptul câmpului Durata emisiunii si din lista derulanta alegem optiunea Ascending.

external image image034.jpg
fig.24
Pentru a afisa rezultatul interogarii (fig.25), actionam butonul external image image008.jpg (Datasheet View) din bara cu instrumente.

external image image036.jpg
fig.25

Interogari de actualizare a înregistrarilor (Update Query)
În cazul cînd este necesar de a modifica un numar mare de înregistrari conform unuia si aceluiasi algoritm, putem defini o interogare de modificare (Update Query)
Vom descrie în continuare modul de definire a unei interogari pentru care stirile se maresc cu 5 minute.
1. Definim interogarea în modul descris în p.5.1.
2. Includem tabelul Emisiuni si Genuri.
3. Selectam Update din meniul Query sau actionam butonul din bara de instrumente.Ca rezultat titlul ferestrei se modifica în Update Query, iar în partea de jos apare rîndul Update To (fig.26).

external image image038.jpg
fig.26

4. Includem (prin "tragere") în celulele rîndului Field câmpurile DenEmisiunii, DenGen, Durata emisiunii.
5. Introducem în rîndul Update To pentru câmpul DenEmisiunii expresia [DenEmisiunii], DenGen expresia [DenGen], Durata emisiunii expresia [Durata emisiunii]+5
6. Introducem în rîndul Criteria pentru câmpul DenGen conditia Stiri.
7. Actionam butonul external image image008.jpg din bara cu instrumente, pentru a obtine valorile curente ale câmpului Durata emisiunii care urmeaza a fi modificate (fig.27).

external image image040.jpg
fig.27

Modificarile propriu-zise vor fi operate numai dupa trecerea în regimul Design View si actionarea butonului din bara cu instrumente sau executarea comenzii Run din meniul Query. În acest caz pe ecran va aparea un mesaj despre numarul total al înregistrarilor care urmeaza a fi modificate. Actionînd butonul Yes , Access va efectua modificarile (fig.28). Pentru a renunta la modificari, actionam butonul No .
external image image042.jpg

fig.28
Remarca: Interogarile de tip Update se executa de regula o singura data. În cazul executarii repetate a interogarii definite în exemplul de mai sus, vom obtine de fiecare data marirea emisiunilor stiri cu 5 minute.

Interogari de excludere a înregistrarilor (Delete Query)

Fie, de exemplu, ca dorim sa excludem din tabelul Emisiuni toate emisiunile între ora 1000 -1200. Pentru aceasta, executam urmatoarele actiuni:
1. Definim interogarea în modul descris în p 5.1.
2. Includem tabelul Emisiuni.
3. Selectam Delete Query din meniul Query sau actionam butonul

(daca este afisat) din bara cu instrumente. Ca rezultat, titlul ferestrei se

schimaг în Delete Query iar în partea de jos a ferestrei apare rîndul Delete.
4. Din lista cîmpurilor tabelului Emisiuni, afisata în partea de sus a ferestrei (fig. 8.12), selectam câmpurile care vor fi afisate sau pentru care vor fi specificate conditii de selectie DenEmisiunii si Timpul începerii si le "tragem" în celulele respective ale rîndului Field din partea de jos. Ca rezultat, în celulele respective pentru fiecare câmp apare optiunea
Where (din engleza - Unde, In care).
5. Introducem în celulele rîndului Criteria conditiile selectiei. În cazul nostru pentru cîmpul Timpul începerii scriem conditia Between 1000 And 1200.


external image image044.jpg
fig.29
6. Pentru a obtine lista înregistrarilor care urmeaza a fi excluse (dar înca n-au fost excluse), actionam butonul external image image008.jpg (Datasheet View) din bara cuinstrumente. Ca rezultat, obtinem fereastra, reprezentata în figura 8.13.

external image image046.jpg
fig.30
7. Daca rezultatele obtinute în p.6 sunt cele dorite, revenind la regimulDesign View, putem elimina realmente înregistrarile, executînd comanda Run din meniul Query sau actionînd butonul (Run) din bara cu instrumente. Ca rezultat, pe ecran apare un mesaj despre numarul total al înregistrarilor care urmeaza a fi eliminate. Daca actionam butonul Yes, înregistrarile vizate sunt eliminate definitiv. Pentru renuntare, actionam butonul No.
8. Salvam interogarea, executînd comanda Save As din meniul File si

indicînd numele interoga


Interogari de grupare si totalizare a înregistrarilor

În multe cazuri apare necesitatea de a obtine valori rezumative referitoare la toate înregistrarile din tabel sau pentru o submultime a lor. De exemplu, ar putea sa ne intereseze cîte emisiuni de fiecare gen sunt. În acest scop în Access pot fi definite interogari în care sunt specificate conditii de grupare si totalizare.
Pentru obtinerea valorilor rezumative, sunt prevazute urmatoarele functii:

-Sum, pentru calcularea sumei valorilor cîmpului;
-Avg, pentru calcularea mediei valorilor cîmpului;

-Min, pentru gasirea valorii minime;
-Max, pentru gasirea valorii maxime;

-Count, calculeaza numarul de valori ale cîmpului (excluzînd cele vide);
-StDev, pentru calcularea abatem standard;
-Var, pentru calcularea dispersiei.

Valorile rezumative pot fi obtinute atît pentru toate înregistrarile din tabel cît si pentru grupuri de înregistrari.
Fie ca dorim sa obtinem informatii despre cîte emisiuni de fiecare gen sunt. Pentru aceasta executam urmatoarele actiuni:
1. Definim o interogare în care includem tabelele Emisiuni si Genuri din care selectam cîmpurile DenGen si DenEmisiunii (fig)
external image image048.jpg
fig.31

2. Selectam optiunea Totals din meniul View; ca rezultat în caseta de jos apare rîndul Total, iar în celulele respective ale cîmpurilor selectate optiunea Group By
3. Din lista derulanta a cîmpului DenEmisiunii (rîndul Total) selectam optiunea Cou
nt.
4. Actionam butonul external image image008.jpg pentru a obtine valorile cautate (fig)

external image image050.jpg
fig.32

Interogari încrucisate (Crosstab Query)
In multe cazuri rezultatele unei interogari sunt greu de perceput din cauza volumului mare de informatii selectate. In figura sunt prezentate datele despre cîte emisiuni de fiecare gen sunt, obtinute cu ajutorul unei interogari de grupare si totalizare.
external image image050.jpg
fig
Access permite gruparea si reprezentarea datelor într-o forma compacta, forma care se aseamana cu un tabel electronic.În acest scop se definesc interogari speciale, numite interogari încrucisate (Crosstab Query).
Pentru a defini o interogare încrucisata procedam initial ca în cazul unei interogari de selectie obisnuita, adica selectam tabelele Emisiuni, Canale TV, Genuri, din care selectam câmpurile DenGen, DenCanal, DenEmisiunii (fig)
external image image052.jpg
fig
În continuare parcurgem urmatorii pasi:
1. Selectam optiunea Crosstab din meniul Query. Ca rezultat, titlul ferestrei

se schimba în Crosstab Query, iar în partea de jos apare rîndul Crosstab.
2. Definim câmpul DenGen, valorile caruia vor servi în calitate de denumiri ale rîndurilor tabelului. Pentru aceasta actionam butonul cu sageata din rîndulCrosstab pentru câmpul DenGen si din lista derulanta care apare selectam optiunea Row Heading.
3. In mod analogic definim câmpul DenCanal, valorile caruia vor servi în calitate de denumiri ale coloanelor tabelului . Pentru aceasta actionam butonul cu sageata din rîndul Crosstab pentru câmpul DenCanal si din lista derulanta care apare selectam optiunea Column Heading.
4. În rîndul Total înlocuim optiunea Group By din câmpul DenEmisiunii prin

operatorul Count.
5. Pentru câmpul DenEmisiunii în rîndul Crosstab stabilim optiunea Value pe

care o selectam din lista derulanta prin analogie cu actiunile descrise mai sus.
6. Actionam butonul external image image008.jpg pentru vizualizarea rezultatelor (fig)


external image image054.jpg