Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Interogari

baze de date



+ Font mai mare | - Font mai mic



Interogari

1.Introducere



Interogarile sunt folosite pentru a:

utiliza numai anumite campuri

sorta inregistrarile intr-o anumita ordine

selecta numai acele inregistrari care indeplinesc anumite criterii

combina inregistrari din mai multe tabele

Interogarea este o definitie a datelor ce vor fi regasite: ce campuri, din care tabele, corespunzator caror criterii, in ce ordine de sortare.

Odata definita, interogarea poate fi utilizata in acelasi mod ca un tabel. Cand deschideti o interogare din fereastra Database, informatiile sunt afisate intr-o foaie de date. Modificarile realizate in foaia de date vor fi scrise inapoi in tabelele corespunzatoare.

Interogarea poate fi folosita ca sursa de inregistrari pentru un formular sau un raport.

2.Crearea interogarilor

Pentru a crea o interogare:

1.Se selecteaza eticheta Queries in fereastra Database, apoi

2.Se executa clic pe New.

3.Apare caseta de dialog New Query din care se selecteaza Design View.


4.Se deschide fereastra Query Design si fereastra Show Table. Se aleg tabelele si interogarile care vor furniza inregistrarile folosind fereastra Show Table, apoi se inchide aceasta fereastra.

5.In continuare se selecteaza campurile implicate in interogare.

Pentru a adauga un camp se executa dublu-clic pe el, se trage pe grila sau se selecteaza din lista derulanta din randul Field.


Daca se doreste utilizarea tuturor campurilor dintr-un tabel, se poate utiliza semnul *.

In grila interogarii, randul Field contine numele campurilor care vor apare in grila de iesire.

Imediat sub numele campului (in randul Table) este prezentat numele tabelului.

6. Se precizeaza criteriile de sortare (randul Sort) si criteriile de selectie (Criteria). De asemenea, se utilizeaza caseta de validare din randul Show pentru a preciza includerea campului ca o coloana in cadrul informatiilor de iesire ale interogarii sau utilizarea acestuia numai pentru criterii de selectie.

Optiuni disponibile pentru Sort: Ascending (ordine crescatoare), Descending (ordine descrescatoare) si not sorted..


7.se salveaza interogarea

Obs:


q       Pentru a renunta la un camp din interogare, se selecteaza acel camp si se apasa tasta Del. Selectia campului se realizeaza prin clic pe bara mica de culoare gri situata deasupra numelui campului.

q       Pentru a renunta la toate campurile unui tabel, se selecteaza tabelul in partea de sus a ferestrei Query Design si se apasa Del.

3.Exemple:

3.1.Exemplul 1: crearea unei interogari pe baza anumitor campuri dintr-un tabel.

Se doreste o lista a tuturor angajatilor, in ordinea vechimii acestora .Vom crea o interogare pe baza campurilor Nume, Prenume si DataAngajarii din tabelul Angajati. Inregistrarile vor fi ordonate dupa Data Angajarii.

Procedati astfel:

1.selectati eticheta Queries in fereastra Database

2.executati clic pe butonul New

3.in caseta de dialog New Query selectati Design View

4.se deschide fereastra Query Design si fereastra Show Table; efectuati dublu-clic pe Angajati, apoi clic pe butonul Close pentru a inchide aceasta fereastra

5.selectati campurile implicate in interogare: efectuati dublu-clic pe Nume, 'trageti' pe grila campul Prenume si selectati DataAngajarii din lista derulanta din randul Field.


 



6.pe linia Sort, sub campul DataAngajarii, selectati optiunea Ascending.

7.salvati interogarea cu numele qryAngajati.


8.Apasati pictograma Datasheet View si veti vedea rezultatul:

Daca doriti realizarea sortarii pe mai multe campuri, Access va sorta secvential de la stanga la dreapta. In exemplul de mai sus, daca selectam Ascending atat pentru campul Nume cat si pentru DataAngajarii,



atunci inregistrarile vor fi ordonate astfel:

(ordonarea este realizata in functie de Nume, iar acolo unde numele coincid, inregistrarile sunt ordonate in functie de DataAngajarii).

3.2.Exemplul 2: Crearea unei interogari pe baza unui subset de inregistrari

Vom selecta doar angajatii cu numele Popescu.

Pasii 1-5 sunt aceeasi ca in exemplul precedent.

6.Pe linia Criteria, sub campul scrieti 'Popescu'.



7.Salvati interogarea si vizualizati rezultatul:

Obs:

Daca se introduc mai multe valori in acelasi rand de criterii sub campuri diferite, Access va extrage numai inregistrarile care indeplinesc toate criteriile mentionate.


Exemplu:


In cazul in care criteriile sunt introduse pe randuri diferite, o inregistrare va fi inclusa daca indeplineste oricare dintre criterii.

Exemplu:


3.3.Exemplul 3: Crearea unei interogari pe baza mai multor tabele.

Vom crea o interogare pe baza tabelelor Angajati si Proiect.

1.selectati eticheta Queries in fereastra Database

2.executati clic pe butonul New

3.in caseta de dialog New Query selectati Design View


4.se deschide fereastra Query Design si fereastra Show Table; efectuati dublu-clic pe Angajati si Proiect, apoi clic pe butonul Close pentru a inchide aceasta fereastra. Fereastra Query Design afiseaza linii de legatura intre campurile in care au fost definite relatiile.

5.selectati campurile implicate in interogare: efectuati dublu-clic pe Nume si Prenume din Angajati si pe Denumire din tabelul Proiect.


Rezultatul:

Obs:

In fereastra Query Design pot fi adaugate, editate sau sterse asocieri. Aceste operatii au efect numai in interogarea creata nu si asupra relatiilor propriu-zise.

4.Campuri calculate

Campurile calculate se utilizeaza in situatiile in care o interogare trebuie sa includa o valoare care nu este cuprinsa in campurile care constituie baza interogarii. De exemplu, un tabel care contine campurile Cantitate si PretUnitar nu trebuie sa contina si un camp Valoare. Dar, o interogare bazata pe acest tabel ar putea sa aiba nevoie de un camp Valoare. Acesta este un camp calculat.

Crearea unui camp calculat: se introduce, intr-o coloana din grila interogarii, numele campului urmat de ':' si formula de calcul.

Exemplu:     Valoare: [Cantitate] * [PretUnitar]

NumeComplet: [Nume] & ' ' & [Prenume]


5.Interogari de tipul Total

Interogarile Totals sunt utilizate pentru a obtine date de sinteza, de exemplu:

pentru a calcula valoarea totala a unui camp

pentru a afla numarul de inregistrari care indeplinesc o conditie, etc.

Pentru a crea o astfel de interogare se procedeaza astfel:

T    in fereastra Database, efectuati clic pe eticheta Queries, apoi clic pe butonul New pentru a crea o noua interogare

T    selectati din fereastra de dialog optiunea Design View; apare fereastra de proiectare a interogarii si fereastra Show Table

T    dublu-clic pe Proiect pentru a-l adauga, apoi clic pe Close pentru a inchide fereastra Show Table


T    clic pe butonul Totals de pe bara cu instrumente;


in grila interogarii apare un rand Total, pe care se precizeaza optiunile pentru sintetizarea datelor.

T    adaugati campurile in grila interogarii

T    precizati pentru fiecare camp optiunea in randul Total

T    salvati interogarea

Pe randul Total pot fi utilizate urmatoarele optiuni:

optiune

utilizata pentru:

Group By

(Grupeaza dupa)

gruparea inregistrarilor; permite crearea subtotalurilor

Sum

a calcula totalul valorilor din camp

Avg

a calcula media valorilor din camp

Min

a gasi valoarea minima din camp

Max

a gasi valoarea maxima din camp

Count

a numara inregistrarile care au ceva in acest camp

StDev

a calcula deviatia standard din camp

Var

a calcula varianta din cadrul campului

First

a extrage prima valoare din camp, conform ordinii de sortare curente

Last

pentru a extrage ultima valoare din camp, conform ordinii de sortare curente

Expression

a crea o expresie calculata

Where

a utiliza un camp numai pentru criterii de selectie; campul nu este inclus printre datele de iesire

5.1.Exemple:

1.Pentru a afla numarul de proiecte realizate cu fiecare client vom grupa dupa ClientID si vom folosi optiunea Count pentru campul Denumire.

afiseaza

 




Observati ca Access a denumit coloana a doua CountOfDenumire. Daca preferati un alt nume, de exemplu NrProiecte, scrieti, in randul Field, NrProiecte: Denumire

De asemenea, ar fi bine sa folosim numele clientului, nu ID-ul sau. Adaugati tabelul Clienti (folosind Show Table) in fereastra de proiectare si campul NumeClient in grila interogarii. ClientID nu mai trebuie afisat, deci deselectati caseta Show pentru acest camp.



Grila de iesire va fi:

2) Pentru a afla - pentru fiecare proiect - ultima data cand clientul a afectuat o plata, vom grupa inregistrarile din Incasari dupa ProiectID si vom folosi optiunea Max pentru campul DataPlatii.


6.Exercitii:

1.Sa se testeze toate exemplele date mai sus.

2.Sa se urmareasca modul in care sunt selectate inregistrarile intr-o interogare creata pe baza mai multor tabelele, in functie de tipul asocierii (Join Type).

3.Creati o interogare care sa selecteze toate proiectele in desfasurare.

4.Creati o interogare care sa selecteze toti clientii din Falticeni - in ordine alfabetica.

5.Creati o interogare care sa selecteze proiectele pentru care s-au facut deconturi in perioada 1 Ian 2001 - 15 Feb 2001; pentru fiecare decont trebuie precizate suma si descrierea cheltuielii.

6.Creati o interogare care sa selecteze angajatii platiti cu cel putin 150000 lei/h si proiectele pe care acesti angajati le-au coordonat sau le coordoneaza.

7.Creati o interogare care sa selecteze toti angajatii (Nume complet, Telefon acasa si e-mail) care nu locuiesc in Suceava.

8.Sa se calculeze suma (totala) platita pentru fiecare proiect.

9.Sa se calculeze numarul de ore lucrate pentru fiecare proiect.

10.Sa se afle data ultimului proiect inceput.

11.Sa se afle data ultimului proiect inceput de fiecare angajat .



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1040
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved