Pentru a face datele rezumat din Access mai ușor de citit și înțeles, luați în considerare utilizarea unei interogări tabel încrucișat. O interogare tabel încrucișat calculează o sumă, o medie sau altă funcție agregată și grupează apoi rezultatele în două seturi de valori: unul de-a lungul foii de date, iar celălalt în partea de sus a foii de date. În panglică, faceți clic pe Creare, apoi, în grupul Interogări, faceți clic pe Expert interogare. În caseta de dialog Interogare nouă, faceți dublu clic pe Expert interogare de tip tabel încrucișat.
Dacă un set de titluri are valori de date, expertul vă va ajuta să grupați înregistrările după intervale standard - cum ar fi luni sau trimestre.
În acest articol
-
Crearea unei interogări tabel încrucișat utilizând Expertul interogare de tip tabel încrucișat
-
Crearea unei interogări tabel încrucișat în Vizualizarea proiect
-
Crearea unei interogări tabel încrucișat în Vizualizarea SQL
-
Solicitarea unui parametru pentru a limita titlurile de rând
Notă: Interogările tabel încrucișat nu sunt disponibile în aplicațiile web Access și sunt acceptate doar parțial în bazele de date: acestea nu pot fi utilizate de niciun obiect web.
Prezentare generală
O interogare tabel încrucișat este un tip de interogare de selectare. Atunci când rulați o interogare tabel încrucișat, rezultatele se afișează într-o foaie de date care are o structură diferită față de alte tipuri de foi de date.
Structura unei interogări tabel încrucișat face interogarea mai ușor de citit decât o simplă interogare de selectare ce afișează aceleași date, după cum se arată în ilustrația următoare.
1. Această interogare de selectare grupează datele rezumat pe verticală, după angajat și categorie.
2. O interogare tabel încrucișat poate afișa aceleași date, dar grupează datele atât pe orizontală, cât și pe verticală, astfel încât foaia de date să fie mai compactă și mai ușor de citit.
Când creați o interogare tabel încrucișat, specificați ce câmpuri conțin titluri de rând, ce câmp conține titluri de coloană și ce câmp conține valori de sintetizat. Este posibil să utilizați un singur câmp pentru fiecare atunci când specificați titlurile de coloană și valorile de sintetizat. Când specificați titlurile de rând, este posibil să utilizați maximum trei câmpuri.
De asemenea, puteți utiliza o expresie pentru a produce titluri de rând, titluri de coloană sau valori de sintetizat. Consultați Funcțiile agregate SQL pentru mai multe informații.
1. Una, două sau trei coloane din această parte conțin titluri de rând. Numele câmpurilor pe care le utilizați ca titluri de rând apar în rândul de sus al acestor coloane.
2. Titlurile de rând apar aici. Numărul de rânduri în foaia de date de tip tabel încrucișat poate crește rapid atunci când utilizați mai multe câmpuri cu titluri de rând, deoarece se afișează fiecare combinație de titluri de rând.
3. Coloanele din această parte conțin titluri de coloană și valori rezumat. Rețineți că numele câmpului cu titlul de coloană nu apare în foaia de date.
4. Valorile rezumat apar aici.
Metode pentru crearea unei interogări tabel încrucișat
Utilizarea Expertului interogare de tip tabel încrucișat Expertul interogare de tip tabel încrucișat este de obicei modalitatea cea mai rapidă și mai simplă de a crea o interogare tabel încrucișat. El face cea mai mare parte din lucru pentru dvs., dar există câteva opțiuni pe care nu le oferă expertul.
Expertul are aceste avantaje:
-
Este simplu de utilizat. Pentru a-l utiliza, porniți expertul, apoi răspundeți la o serie de întrebări ghidate.
-
Poate grupa automat datele în intervale. Dacă utilizați un câmp care conține date de tip dată/oră pentru titlurile de coloană, expertul vă ajută și să grupați datele în intervale, cum ar fi luni sau trimestre.
Sfat: Dacă doriți să utilizați valori dintr-un câmp Dată/Oră pentru titlurile de coloană, dar doriți să grupați datele în intervale pe care nu le furnizează expertul, cum ar fi anul fiscal sau o perioadă de doi ani, nu utilizați expertul pentru a crea interogarea. În schimb, creați o interogare tabel încrucișat în Vizualizarea proiect și utilizați o expresie pentru a crea intervalele.
-
Aceasta poate fi utilizată ca punct de plecare. Puteți utiliza expertul pentru a crea interogarea tabel încrucișat pe care o doriți, apoi ajustați proiectarea interogării utilizând Vizualizarea proiect.
Totuși, utilizând expertul:
-
Nu puteți utiliza mai mult de un tabel sau o interogare ca sursă de înregistrări.
-
Nu puteți utiliza o expresie pentru a crea câmpuri.
-
Nu puteți adăuga o solicitare de parametru.
-
Nu puteți specifica o listă de valori fixe de utilizat ca titluri de coloană.
În ultimul pas al expertului, puteți alege să modificați interogarea în Vizualizarea proiect. Acest lucru vă permite să adăugați elementele de proiectare a interogării pe care expertul nu le acceptă, cum ar fi surse suplimentare ale înregistrării.
Lucrul în Vizualizarea proiect Vizualizarea proiect vă oferă mai mult control asupra proiectării interogării. Aceasta acceptă caracteristici care nu sunt disponibile în expert.
Luați în considerare utilizarea Vizualizării proiect pentru a crea o interogare tabel încrucișat dacă doriți:
-
Să aveți mai mult control asupra procesului. Expertul să ia unele decizii pentru dvs.
-
Să utilizați mai mult de un tabel sau o interogare ca sursă a înregistrării.
-
Să adăugați o solicitare de parametru la interogarea dvs.
-
Să utilizați expresii cu rol de câmpuri în interogarea dvs.
-
Să specificați o listă de valori fixe de utilizat ca titluri de coloană.
-
Să exersați utilizarea grilei de proiect.
Scrierea unei interogări în Vizualizarea SQL Puteți scrie o interogare tabel încrucișat în Vizualizarea SQL, dacă preferați. Totuși, nu puteți specifica tipuri de date parametru utilizând Vizualizarea SQL. Dacă doriți să utilizați un parametru în interogarea tabel încrucișat, trebuie să specificați tipul de date parametru modificând interogarea în Vizualizarea proiect.
Sfat: Rețineți: nu sunteți limitat la utilizarea unei singure metode pentru a crea o interogare tabel încrucișat. Puteți să utilizați expertul pentru a crea interogarea, apoi să utilizați Vizualizarea proiect pentru a modifica proiectarea interogării.
Crearea unei interogări tabel încrucișat utilizând Expertul interogare de tip tabel încrucișat
Utilizarea Expertului interogare de tip tabel încrucișat vă impune să alegeți un singur tabel sau o singură interogare ca sursă de înregistrări pentru interogarea tabel încrucișat. Dacă un singur tabel nu are toate datele pe care doriți să le adăugați la interogarea tabel încrucișat, începeți prin a crea o interogare de selectare care returnează datele dorite. Pentru mai multe informații despre crearea unei interogări de selectare, vedeți secțiunea Consultați și.
Pentru acest exemplu, vom crea o interogare tabel încrucișat utilizând tabelul Produse din baza de date eșantion Northwind. Dorim să afișăm numărul de produse din fiecare categorie, de la toți furnizorii.
-
Pe fila Creare, în grupul Interogări, faceți clic pe Expert interogare.
-
În caseta de dialog Interogare nouă, faceți clic pe Expert interogare de tip tabel încrucișat, apoi faceți clic pe OK.
Pornește Expertul interogare de tip tabel încrucișat.
-
În prima pagină a expertului, alegeți tabelul sau interogarea care doriți să se utilizeze pentru a crea o interogare tabel încrucișat. Pentru acest exemplu, selectați tabelul Produse, apoi faceți clic pe Următorul.
-
Pe pagina următoare, alegeți câmpul care conține valorile pe care doriți să le utilizați ca titluri de rând. Aveți posibilitatea să selectați până la trei câmpuri de utilizat ca surse de titlu de rând, dar cu cât utilizați mai puține titluri de rând, cu atât va fi mai simplă citirea foii de date de tip tabel încrucișat. Dacă alegeți mai multe câmpuri pentru a furniza titluri de rând, ordinea în care alegeți câmpurile determină ordinea implicită în care sunt sortate rezultatele.
Pentru acest exemplu, selectați ID furnizor.Valoare, apoi faceți clic pe butonul etichetat cu simbolul >. Observați că Access afișează numele câmpului în partea stângă a previzualizării interogării eșantion din partea de jos a casetei de dialog. Faceți clic pe Următorul pentru a continua.
-
Pe pagina următoare, alegeți câmpul care conține valorile pe care doriți să le utilizați ca titluri de coloană. În general, trebuie să alegeți un câmp care conține mai puține valori, pentru a face ca rezultatele să fie mai simplu de citit. De exemplu, utilizarea unui câmp care are doar câteva valori posibile (cum ar fi sexul) poate fi de preferat față de utilizarea unui câmp care conține multe valori diferite (cum ar fi vârsta).
În cazul în care câmpul pe care optați să îl utilizați pentru titlurile de coloană are tipul de date Data/Ora, expertul adaugă un pas care vă permite să specificați cum să grupați datele în intervale, cum ar fi luni sau trimestre.
Pentru acest exemplu, selectați Categorie și observați că Access afișează numele categoriilor eșantion în partea de sus a previzualizării interogării eșantion din partea de jos a casetei de dialog. Faceți clic pe Următorul pentru a continua.
-
Dacă alegeți un câmp Data/Ora pentru titlurile de coloană, următoarea pagină a expertului vă solicită să specificați intervalul de utilizat pentru gruparea datelor. Aveți posibilitatea să specificați Anul, Trimestrul, Luna, Data sau Data/Ora. Dacă nu alegeți un câmp Dată/Oră pentru titlurile de coloană, expertul va omite această pagină.
-
La pagina următoare, alegeți un câmp și o funcție de utilizat pentru a calcula valorile rezumat. Tipul de date al câmpului pe care îl selectați determină ce funcții sunt disponibile.
Pe aceeași pagină, bifați sau debifați caseta de selectare Da, cuprinde sume de rânduri pentru a include sau exclude sume de rânduri.
Dacă includeți sume de rânduri, interogarea tabel încrucișat are un titlu de rând suplimentar care utilizează același câmp și aceeași funcție ca valoarea câmp. Includerea unei sume de rânduri inserează o coloană suplimentară ce sintetizează coloanele rămase. De exemplu, dacă interogarea tabel încrucișat calculează vârsta medie după locație și sex (cu titluri de coloană sex), coloana suplimentară calculează vârsta medie după locație, pentru toate sexele.
Pentru acest exemplu, selectați ID în caseta Câmpuri și Contor în caseta Funcții, pentru ca Access să contorizeze numărul de produsele din fiecare intersecție între furnizor și categorie. Lăsați bifată caseta de selectare Da, cuprinde sume de rânduri. Access va crea o coloană care totalizează numărul de produse de la fiecare furnizor. Faceți clic pe Următorul pentru a continua.
-
În ultima pagină a expertului, tastați un nume pentru interogare, apoi specificați dacă doriți să vedeți rezultatele sau să modificați proiectarea interogării.
Puteți modifica funcția utilizată pentru a genera sume de rânduri, editând interogarea tabel încrucișat în Vizualizarea proiect.
-
Dacă ați parcurs acest exemplu utilizând tabelul Produse din baza de date Northwind, interogarea tabel încrucișat afișează lista de nume de furnizori ca rânduri, numele de categorii de produse sub formă de coloane și o contorizare a numărului de produse din fiecare intersecție.
Utilizând Vizualizarea proiect pentru crea interogarea tabel încrucișat, puteți utiliza câte surse ale înregistrării (tabele și interogări) doriți. Totuși, puteți păstra proiectul simplu, creând mai întâi o interogare de selectare care returnează toate datele pe care le doriți și apoi utilizând acea interogare ca sursă de înregistrări unică pentru interogarea tabel încrucișat. Pentru mai multe informații despre crearea unei interogări de selectare, consultați secțiunea Consultați și.
Când construiți o interogare tabel încrucișat în Vizualizarea proiect, utilizați rândurile Total și Tabel încrucișat din grila de proiectare pentru a specifica valorile cărui câmp vor deveni titluri de coloană, valorile cărui câmp vor deveni titluri de rând și pentru valorile cărui câmp se va efectua însumarea, media, numerotarea sau altfel de calcul.
1. Setările din aceste rânduri determină dacă câmpul este un titl de rând, un titlu de coloană sau o valoare rezumat.
2. Această setare afișează valorile câmpului ca titluri de rând.
3. Această setare afișează valorile câmpului ca titluri de coloană.
4. Aceste setări generează valorile rezumat.
Crearea interogării
-
Pe fila Creare, în grupul Interogări, faceți clic pe Proiectare interogare.
-
În caseta de dialog Afișare tabel, faceți clic dublu pe fiecare tabel sau interogare pe care doriți să le utilizați ca sursă de înregistrări.
Dacă utilizați mai multe surse de înregistrări, asigurați-vă că tabelele sau interogările sunt asociate în câmpurile pe care le au în comun. Pentru mai multe informații despre asocierea tabelelor și interogărilor, consultați secțiunea Consultați și.
-
Închideți caseta de dialog Afișare tabel.
-
În fila Proiectare, în grupul Tip interogare, faceți clic pe Tabel încrucișat.
-
În fereastra de proiectare a interogării, faceți dublu clic pe fiecare câmp pe care doriți să îl utilizați ca sursă de titluri de rând. Aveți posibilitatea să selectați până la trei câmpuri drept titluri de rând.
-
În grila de proiectare a interogării, în rândul Tabel încrucișat pentru fiecare câmp de titlu de rând, selectați Titlu de rând.
În rândul Criterii, este posibil să introduceți o expresie pentru a limina rezultatele pentru acel câmp. De asemenea, este posibil să utilizați rândul Sortare pentru a specifica o ordine de sortare pentru un câmp.
-
În fereastra de proiectare a interogării, faceți dublu clic pe câmpul pe care doriți să îl utilizați ca sursă de titluri de coloană. Aveți posibilitatea să selectați un singur câmp pentru titlurile de coloană.
-
În grila de proiectare a interogării, în rândul Tabel încrucișat pentru câmpul de titlu de coloană, selectați Titlu de coloană.
În rândul Criterii, este posibil să introduceți o expresie pentru a elimina rezultatele pentru câmpul titlu de coloană. Totuși, utilizarea unei expresii criteriu alături de câmpul titlu coloană nu limitează numărul de coloane returnate de o interogare tabel încrucișat. În schimb, aceasta limitează ce coloane conțin date. De exemplu, să presupunem că aveți un câmp titlu de coloană care are trei valori posibile: roșu, verde și albastru. Dacă aplicați criteriul ='albastru' la câmpul titlu de coloană, tabelul încrucișat afișează în continuare o coloană pentru roșu și o coloană pentru verde, dar doar coloana pentru albastru conține date.
Dacă doriți să limitați valorile care se afișează ca titluri de coloană, puteți specifica o listă de valori fixe utilizând proprietatea Titluri de coloană a interogării. Pentru mai multe informații, consultați secțiunea următoare.
-
În fereastra de proiectare a interogării, faceți dublu clic pe câmpul pe care doriți să îl utilizați pentru a calcula valorile de rezumat. Aveți posibilitatea să selectați un singur câmp de utilizat pentru valorile de rezumat.
-
În grila de proiectare a interogării, în rândul Total al câmpului de valori de rezumat, selectați o funcție agregată de utilizat pentru a calcula valorile.
-
În rândul Tabel încrucișat pentru câmpul valori rezumat, selectați Valoare.
Nu este posibil să specificați criterii pentru câmpul valori rezumat și nici să sortați după acesta.
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Specificarea de valori fixe pentru titlurile de coloane
Dacă doriți să specificați valori fixe de utilizat pentru titlurile de coloană, aveți posibilitatea să setați proprietatea Titluri de coloană a interogării.
-
Deschideți interogarea tabel încrucișat în Vizualizarea proiect.
-
Dacă foaie de proprietăți nu este deja vizibilă, apăsați F4 pentru a o afișa.
-
În foaia de proprietăți, imediat deasupra filei General, asigurați-vă că Tip selecție este Proprietăți interogare. Dacă nu este, faceți clic pe o zonă necompletată din spațiul de deasupra grilei de proiectare a interogării.
-
În foaia de proprietăți, pe fila General, în proprietatea Titluri de coloană, introduceți o listă de valori separate prin virgulă pe care doriți să le utilizați ca titluri de coloană.
Unele caractere (cum ar fi majoritatea semnelor de punctuație) nu sunt permise în titlurile de coloană. Dacă utilizați aceste caractere în lista de valori, Access substituie fiecare astfel de caracter cu un caracter de subliniere (_).
Sintaxa SQL pentru o interogare tabel încrucișat
O interogare tabel încrucișat este exprimată în SQL ca instrucțiune TRANSFORM. Instrucțiunea TRANSFORM are următoarea sintaxă:
Transformarea selecției funcției
Pivotfield [IN (valoare1[, valoare2[, ...]])]Instrucțiunea TRANSFORM are următoarele componente:
Parte |
Descriere |
funcțieagregată |
O funcție agregată SQL care operează cu datele selectate. |
instrucțiuneselect |
O instrucțiune SELECT. |
câmppivot |
Câmpul sau expresia pe care doriți să o utilizați pentru a crea titluri de coloană în setul de rezultate al interogării. |
valoare1, valoare2 |
Valori fixe utilizate pentru a crea titluri de coloană. |
Vizualizarea SQL nu limitează numărul de tabelele sau interogări pe care le puteți utiliza ca surse de înregistrări pentru o interogare tabel încrucișat. Totuși, puteți păstra proiectul simplu, creând o interogare de selectare care returnează toate datele pe care doriți să le utilizați în interogarea tabel încrucișat, apoi să utilizați acea interogare de selectare ca sursă a înregistrării. Pentru mai multe informații despre crearea unei interogări de selectare, consultați secțiunea Consultați și.
-
Pe fila Creare, în grupul Altele, faceți clic pe Proiectare interogare.
-
Închideți caseta de dialog Afișare tabel.
-
Pe fila Proiectare, în grupul Vizualizări, faceți clic pe Vizualizare, apoi faceți clic pe Vizualizare SQL.
-
În fila Obiect SQL, tastați sau lipiți următorul SQL:
TRANSFORM SELECT FROM GROUP BY PIVOT ;
-
În prima linie, după TRANSFORM, tastați o expresie de utilizat pentru a calcula valorile rezumat; de exemplu, Sum([Sumă]).
Dacă utilizați mai multe tabele sau interogări ca sursă de înregistrări, includeți numele tabelului sau interogării ca parte a fiecărui nume de câmp; de exemplu, Sum([Cheltuieli].[Sumă]).
-
Pe al doilea rând, după SELECT, tastați o listă de câmpuri sau de expresii de câmp pe care doriți să le utilizați pentru titlurile de rând. Separați elementele din listă prin virgulă; de exemplu, [Buget].[ID_dep], [Cheltuieli].[Tip].
-
În rândul al treilea, după FROM, tastați o listă de tabele sau de interogări pe care le utilizați ca surse de înregistrări; de exemplu, Buget, Cheltuieli.
-
Pe rândul al patrulea, după GROUP BY, tastați aceeași listă de câmpuri utilizate în clauza SELECT, la pasul 6.
-
Pe al cincilea rând, după PIVOT, tastați un nume de câmp sau o expresie pe care doriți să le utilizați pentru titlurile de coloană; de exemplu, PIVOT [Buget].[An].
Pentru a adăuga o ordine de sortare la o interogare de tip tabel încrucișat dintr-o vizualizare SQL, utilizați o clauză ORDER BY.
-
Inserați o linie între clauza GROUP BY și clauza PIVOT.
-
Pe linia nouă, tastați ORDER BY, urmat de un spațiu.
-
Tastați numele câmpului sau expresia după care doriți să sortați; de exemplu, ORDER BY [Cheltuieli].[Clasă_Cheltuieli]
În mod implicit, clauza ORDER BY sortează valorile în ordine ascendentă. Dacă doriți să sortați în ordine descendentă, tastați DESC după numele câmpului sau expresiei.
-
Dacă doriți să sortați după un câmp suplimentar sau după o expresie suplimentară, tastați o virgulă, apoi tastați numele câmpului suplimentar sau pe cel al expresiei suplimentare. Sortarea apare în ordinea în care apar câmpurile sau expresiile în clauza ORDER BY.
-
La sfârșitul clauzei PIVOT din vizualizarea SQL a unei interogări tabel încrucișat, tastați IN, urmat de o listă de valori separate prin virgulă (încadrată între paranteze) de utilizat ca titluri de coloană. De exemplu, IN (2007, 2008, 2009, 2010) generează patru titluri de coloană: 2007, 2008, 2009, 2010.
Dacă specificați o valoare fixă care nu corespunde unei valori de câmp din câmpul pivot, acea valoare fixă devine un titlu de coloană pentru o coloană necompletată.
-
Inserați o linie nouă după clauza FROM în vizualizarea SQL a interogării de tip tabel încrucișat.
-
Tastați WHERE, urmat de un criteriu de câmp.
Dacă doriți să utilizați criterii suplimentare, puteți utiliza operatorii AND și OR pentru a extinde clauza WHERE. De asemenea, puteți utiliza paranteze pentru a grupa criteriile în seturi logice.
Uneori, mai degrabă decât să utilizați fiecare valoare dintr-un câmp pentru titluri de rând sau de coloană, se recomandă să grupați valorile unui câmp în zone, apoi să utilizați aceste zone pentru titluri de rând sau de coloană. De exemplu, să presupunem că utilizați un câmp „Vârstă” pentru un titlu de coloană. Decât să utilizați o coloană pentru fiecare vârstă, poate preferați să utilizați coloane care reprezintă intervale de vârstă.
Puteți utiliza funcția IIf într-o expresie pentru a crea zone de utilizat pentru titlurile de rând sau de coloană.
Sfat: Dacă doriți să creați intervale cu un câmp Data/Ora, luați în considerare utilizarea Expertului interogare de tip tabel încrucișat. Expertul vă permite să grupați datele în intervale An, Trimestru, Luna, Data sau Data/Ora. Dacă niciunul dintre aceste intervale nu este ceea ce doriți, trebuie să creați interogarea tabel încrucișat în Vizualizarea proiect, apoi să utilizați tehnica descrisă în această secțiune pentru a crea intervalele dorite.
-
Deschideți interogarea tabel încrucișat în Vizualizarea proiect.
-
În grila de proiectare a interogării, în rândul Câmp, faceți clic cu butonul din dreapta pe o coloană necompletată, apoi faceți clic pe Zoom în meniul de comenzi rapide.
-
În caseta Zoom, tastați un alias de câmp, urmat de două puncte (:).
-
Tastați IIf().
-
În parantezele care urmează după IIf, tastați o expresie de comparare care definește prima zonă de valori de câmp.
De exemplu, să presupunem că creați intervale pentru un câmp Vârsta și doriți ca fiecare interval să fie douăzeci de ani. Expresia de comparare pentru prima zonă este [Vârsta]<21.
-
Tastați o virgulă după expresia de comparare, apoi tastați un nume pentru zonă, cuprins între ghilimele. Numele pe care îl furnizați este titlul de tabel încrucișat pentru valorile care sunt cuprinse în interval.
De exemplu, după [Vârsta]<21, tastați o virgulă, apoi tastați "0-20 ani".
-
Tastați o virgulă după numele zonei (în afara ghilimelelor), apoi alegeți una dintre variantele următoare:
-
Pentru a crea altă zonă, tastați IIf(), apoi repetați pașii 5, 6 și 7.
-
Pentru ultima zonă, tastați doar un nume.
De exemplu, o expresie IIf complet imbricată care separă un câmp Vârstă în intervale de douăzeci de ani poate arăta astfel (sfârșiturile de linie au fost adăugate pentru lizibilitate):
IIf([Age]<21,"0-20 years", IIf([Age]<41,"21-40 years", IIf([Age]<61,"41-60 years", IIf([Age]<81,"61-80 years", "80+ years"))))
Notă: Când Access evaluează expresia, acesta oprește evaluarea imediat ce unul dintre enunțurile IIf este evaluat ca adevărat. Nu trebuie să specificați capătul de jos al fiecărei zone, deoarece orice valoare care cade sub capătul de jos al unei zone date a fost evaluată deja ca adevărată.
-
-
În grila de proiectare a interogării, în rândul Total, selectați Grupare după.
-
În rândul Tabel încrucișat, specificați dacă să se utilizeze zonele ca titluri de rând sau ca titluri de coloană. Rețineți că este posibil să specificați de la unul la trei titluri de rând și un singur titlu de coloană.
Poate doriți ca interogarea tabel încrucișat să solicite date de intrare atunci când rulează. De exemplu, să presupunem că utilizați mai multe titluri de rând, dintre care unul este Țară/Regiune. În loc să afișeze întotdeauna date pentru fiecare țară sau regiune, se recomandă ca interogarea să solicite un nume, apoi să afișeze date în funcție de datele utilizatorului.
Aveți posibilitatea să adăugați o solicitare de parametri la orice câmp titlu de rând.
Notă: De asemenea, puteți să adăugați o solicitare de parametru într-un câmp titlu de coloană, dar acest lucru nu va limita coloanele care apar.
-
Deschideți interogarea tabel încrucișat în Vizualizarea proiect.
-
În rândul Criterii pentru câmpul titlu de rând pentru care doriți să solicitați utilizatorului o intrare, tastați o întrebare cuprinsă între paranteze drepte. Textul întrebării va apărea ca un mesaj atunci când interogarea este rulată.
De exemplu, dacă tastați [Care țară sau regiune?] în rândul Criterii, atunci când rulează interogarea, apare o casetă de dialog care conține întrebarea „Care țară sau regiune?,” o casetă de intrare și un buton OK.
Sfat: Dacă doriți ca parametrul să fie flexibil, concatenați expresia cu caractere wildcard, utilizând operatorul Like. De exemplu, în loc să utilizați [Care țară sau regiune?] ca criteriu, puteți utiliza Like [Care țară sau regiune?]&"*" pentru ca parametrul să se potrivească unei zone mai mari de date de intrare. Utilizarea operatorului Like nu modifica aspectul solicitării de parametri.
-
Pe fila Proiectare din grupul Afișare/Ascundere faceți clic pe Parametri.
-
În caseta de dialog Parametri interogare, în coloana Parametri, introduceți aceeași solicitare de parametri pe care ați utilizat-o în rândul Criterii. Includeți parantezele drepte, dar nu includeți niciun caracter wildcard concatenat sau operatorul Like.
-
În coloana Tip de date, selectați tipul de date pentru parametru. Tipul de date ar trebui să se potrivească cu tipul de date din câmpul titlu de rând.
În cazul în care câmpul pe care îl utilizați pentru a calcula valorile rezumat din interogarea tabel încrucișat conține valori nule, acele valori sunt ignorate de orice funcție agregată pe care o utilizați. Pentru unele funcții agregate, rezultatele pot fi afectate. De exemplu, pentru a calcula o medie, adunați toate valorile și împărțiți rezultatul la numărul de valori. Dar, în cazul în care câmpul conține valori nule, acele valori nule nu sunt contorizate ca parte a numărului de valori.
În unele cazuri, este posibil să preferați să înlocuiți orice valori nule cu zerouri, astfel încât valorile să fie numărate în timpul calculelor agregate. Aveți posibilitatea să utilizați funcția Nz pentru a înlocui valorile nule cu zerouri.
Sintaxa Nz
Nz ( variant [, valueifnull ] )
Sintaxa funcției Nz are următoarele argumente:
Argument |
Descriere |
variant |
Obligatoriu. O variabilă cu tip de dateVariant. |
valueifnull |
Opțional (doar dacă nu se utilizează într-o interogare). Un Variant care furnizează o valoare care să se returneze dacă argumentul variant este Null. Acest argument permite returnarea unei valori diferite de zero sau un șir de lungime zero. Notă: Dacă utilizați funcția Nz într-o expresie dintr-o interogare fără a utiliza argumentul valoaredacănul, rezultatul va fi un șir diferit de zero în câmpul care conține valori nule. |
-
Cu interogarea deschisă în Vizualizarea proiect, în grila de proiectare a interogării, faceți clic cu butonul din dreapta pe câmpul Valoare.
-
În meniul de comenzi rapide, faceți clic pe Zoom.
-
În caseta Zoom, închideți numele câmpului sau al expresiei între paranteze, apoi tastați Nz în fața parantezelor.
-
Tastați , 0 chiar înăuntrul parantezei din dreapta.
De exemplu, dacă ați utilizat Nz cu un câmp numit „Ore pierdute” pentru a transforma valorile nule în zerouri, expresia finală ar arata astfel:
Nz([Hours Lost], 0)
-
Păstrați scrierea simplă Interogările tabel încrucișat pot deveni dificil de citit pe măsură ce numărul de combinații de rânduri crește. Nu utilizați mai multe titluri de rând decât aveți nevoie.
-
Gândiți-vă să construiți treptat interogarea de tip tabel încrucișat Nu vă limitați la a utiliza doar tabele. Adesea este posibil să începeți construind o interogare de totaluri, apoi utilizând acea interogare ca sursă de înregistrări pentru o interogare de tip tabel încrucișat.
-
Alegeți cu atenție câmpul titlu de coloană Foile de date tabel încrucișat sunt de obicei mai ușor de citit atunci când numărul de titluri de coloană rămâne relativ mic. Odată ce ați identificat câmpurile pe care doriți să le utilizați ca titluri, luați în considerare utilizarea câmpului care are cele mai puține valori distincte pentru a genera titlurile de coloană. De exemplu, dacă interogarea calculează o valoare după vârstă și sex, luați în considerare utilizarea clasificării după sex pentru titlurile de coloană în loc de vârstă, deoarece sexul are de obicei mai puține valori posibile de vârstă.
-
Utilizarea unei subinterogări într-o clauză WHERE Puteți utiliza o subinterogare ca parte a unei clauze WHERE într-o interogare tabel încrucișat.