În Access, puteți crea un câmp multi-valoare care conține mai multe valori (până la 100). De asemenea, puteți crea un câmp de căutare care afișează o valoare prietenoasă pentru utilizator legată la o valoare din altă sursă de date. Atunci când interogați un câmp de căutare sau multi-valoare, există considerații unice. Pentru mai multe informații, consultați Create sau ștergerea unui câmp multi-valoare și Create sau ștergerea unui câmp de căutare.
În acest articol
-
Vizualizarea valorii de legătură a unui câmp de căutare într-o interogare
-
Utilizarea valorii de afișare pentru un câmp de căutare dintr-o interogare
-
Adăugarea criteriilor la un câmp multi-valoare dintr-o interogare
-
Adăugarea mai multor criterii la un câmp multi-valoare dintr-o interogare
-
Gruparea și numărarea unui câmp multi-valoare într-o interogare
-
Utilizarea unei interogări adăugare cu un câmp multi-valoare
-
Utilizarea unei interogări de actualizare cu un câmp multi-valoare
-
Utilizarea unei interogări Ștergere cu un câmp multi-valoare
Vizualizarea valorii de legătură a unui câmp de căutare într-o interogare
Valoarea de afișare a unui câmp de căutare se afișează automat în vizualizarea foaie de date de interogare în mod implicit. Atunci când creați o interogare, puteți înlocui acest comportament, astfel încât să se afișeze în schimb valoarea de legătură. În acest exemplu, să presupunem că doriți să vedeți valoarea de legătură a unui câmp de căutare într-un tabel sediu central care "caută" un nume de stat din Noua Anglie.
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelele Headquarters și NewEngland .
Cele două tabele ar trebui asociate.
Pentru mai multe informații, consultați Asocierea tabelelor și interogărilor.
-
Glisați un câmp împreună cu câmpul de căutare în grila de proiectare a interogării. În acest exemplu, adăugați câmpul Localitate și NEState .
-
Faceți clic pe câmpul Căutare, apoi, pe fila Proiectare , în grupul Afișare/Ascundere , faceți clic pe Foaie de proprietăți. În acest exemplu, utilizați câmpul NEState .
-
În foaia de proprietăți, selectați fila Căutare , apoi, în proprietatea Control afișare , selectați Casetă text.
Rezultat Acum, când vizualizați interogarea în Vizualizare foaie de date, vedeți valoarea de legătură corespunzătoare a valorii de afișare.
Utilizarea valorii de afișare pentru un câmp de căutare dintr-o interogare
Atunci când creați un câmp de căutare, se creează o asociere între valoarea Legătură și Valoarea de afișare. Deși nu puteți utiliza direct valoarea afișată într-o interogare, puteți utiliza valoarea corespunzătoare din cealaltă sursă de date. În acest exemplu, să presupunem că doriți să utilizați valoarea de afișare a câmpului de căutare NEState din tabelul Sediu central dintr-o interogare ca criteriu.
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelele Headquarters și NewEngland .
Cele două tabele ar trebui asociate. Pentru mai multe informații, consultați Asocierea tabelelor și interogărilor.
-
Glisați câmpurile pe care doriți să le utilizați în grila de interogare. În acest exemplu, glisați Localitate din tabelul Sediu central în prima coloană, NEState din tabelul Sediu central în a doua coloană și StateName din tabelul NewEngland în a treia coloană.
-
Debifați caseta de selectare Afișare a numelui de stat din grila de interogare.
-
În grila de interogare, sub StateName, în rândul Criterii, introduceți Vermont.
Criteriile de interogare se bazează pe coloana StateName ,care, desigur, este aceeași valoare ca valoarea de afișare , NEState, dar nu este afișată în Vizualizarea foaie de date.
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat Doar rândul care conține Vermont este afișat.
Utilizarea unui câmp multi-valoare într-o interogare
Când afișați un câmp multi-valoare într-o interogare, puteți afișa câmpul multi-valoare complet care conține toate valorile separate prin virgule pe un rând sau date aplatizate cu un rând separat pentru fiecare valoare. De exemplu, să presupunem că aveți un tabel Probleme care conține un câmp Titlu pentru fiecare problemă și un câmp AtribuitLa multi-valoare pentru a atribui probleme persoanelor.
Afișarea tuturor valorilor dintr-un câmp multi-valoare într-un singur rând
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelul Probleme .
-
Glisați câmpurile în grila de proiectare a interogării. În acest exemplu, glisați câmpul Titlu și câmpul AtribuitLa multi-valoare.
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat După cum vă puteți aștepta, o coloană afișează câmpul Titlu , iar a doua coloană afișează câmpul multi-valoare AtribuitLa :
Afișarea fiecărei valori a unui câmp multi-valoare într-un singur rând (vizualizarea aplatizată)
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelul Probleme .
-
Glisați câmpurile în grila de interogare. În acest exemplu, glisați câmpul Titlu și câmpul Multi-valoare AtribuitLa.Valoare .
Formatul, <> NumeCâmp. Valoare, adaugă proprietatea Value ca șir . Valoarea câmpului AtribuitLa .
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat Datele sunt aplatizate astfel încât câmpul Titlu se repetă și fiecare valoare din câmpul multi-valoare AtribuitLa se afișează într-un rând corespunzător:
Adăugarea criteriilor la un câmp multi-valoare dintr-o interogare
Plasarea acelorași criterii în grila de interogare în coloane de grilă diferite are un impact major asupra rezultatelor interogării.
Adăugarea criteriilor care afișează toate valorile dintr-un câmp multi-valoare într-un singur rând
Access creează mai întâi un set de rezultate, apoi adaugă criteriile.
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelul Probleme .
-
Glisați câmpurile în grila de interogare. În acest exemplu, glisați câmpul Titlu , câmpul Multi-valoare AtribuitLa și câmpul multi-valoare AtribuitLa.Valoare .
-
Debifați caseta de selectare Afișare din Valoarea AtribuitLa din grila de interogare.
-
În grila de interogare, sub AtribuitLa.Valoare, în rândul Criterii , introduceți "NOT "David Hamilton".
Este util să vedeți vizualizarea SQL:
SELECT Title, AssignedTo FROM Issues WHERE NOT AssignedTo.Value = “David Hamilton”;
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat Cele trei probleme care nu i-au fost atribuite lui David Hamilton sunt afișate într-o valoare implicită.
Adăugarea criteriilor care afișează fiecare valoare dintr-un câmp multi-valoare într-un singur rând (vizualizarea aplatizată)
Access creează mai întâi un set de rezultate aplatizate, apoi adaugă criteriile.
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelul Probleme .
-
Glisați câmpurile în grila de interogare. În acest exemplu, glisați câmpul Titlu și câmpul Multi-valoare AtribuitLa.Valoare .
-
În grila de interogare, sub AtribuitLa.Valoare, în rândul Criterii , introduceți NOT "David Hamilton".
Este util să vedeți vizualizarea SQL:
SELECT Issues.Title, AssignedTo.Value FROM Issues WHERE NOT AssignedTo.Value = “David Hamilton”
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat Fiecare problemă care nu este atribuită lui David Hamilton este afișată într-o valoare aplatizat.
Adăugarea mai multor criterii la un câmp multi-valoare dintr-o interogare
Uneori, trebuie să căutați o potrivire pentru mai multe valori dintr-un câmp multi-valoare. De exemplu, să presupunem că doriți să vedeți acele probleme în care atât "Kelly Rollin", cât și "Lisa Miller" se află între valorile din câmpul AtribuitLa
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelul Probleme .
-
Glisați câmpurile în grila de interogare. În acest exemplu, glisați câmpul Titlu și câmpul AtribuitLa multi-valoare.
-
În grila de interogare, sub AtribuitLa, în rândul Criterii , introduceți "Kelly Rollin" ȘI "Lisa Miller".
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat Se afișează acele două probleme atribuite lui "Kelly Rollin" și "Lisa Miller".
Gruparea și numărarea unui câmp multi-valoare într-o interogare
Pentru a efectua calcule, grupare și sortare a valorilor stocate într-un câmp multi-valoare, utilizați <numecâmp>. Câmp valoare. Pentru mai multe informații despre interogările de grup, consultați Numărarea datelor utilizând o interogare.
Pentru a contoriza numărul de probleme atribuite fiecărei persoane
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelul Probleme .
-
Glisați câmpurile pe care doriți să le utilizați în grila de interogare. În acest exemplu, glisați AssignedTo.Value în prima coloană și Titlu în a doua coloană.
-
Pe fila Proiectare, în grupul Afișare/Ascundere faceți clic pe Totaluri.
Rândul Total apare în grila de interogare. Grupare după apare în mod implicit în celula Total de sub fiecare câmp din interogare.
-
În grila de interogare, sub Titlu, în rândul Total , faceți clic pe Contor.
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat Numărul de probleme atribuite per persoană se afișează într-o vizualizare aplatizat.
Pentru a contoriza câte persoane sunt atribuite fiecărei probleme
-
Deschideți interogarea în Vizualizarea proiect.
-
În acest exemplu, adăugați tabelul Probleme .
-
Glisați câmpurile pe care doriți să le utilizați în grila de interogare. În acest exemplu, glisați Titlu în prima coloană și glisați AtribuitLa în a doua coloană.
-
Pe fila Proiectare, în grupul Afișare/Ascundere faceți clic pe Totaluri.
Rândul Total apare în grila de interogare. Grupare după apare în mod implicit în celula Total de sub câmpul Titlu din interogare. Expresia apare în mod implicit în celula Total de sub câmpul AtribuitLa , deoarece nu puteți efectua o operațiune Grupare după direct într-un câmp multi-valoare, doar un <NumeCâmp>. Câmp valoare.
-
În grila de interogare, sub AtribuitLa, în rândul Total , faceți clic pe Contor.
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Rezultat Numărul de persoane atribuite pentru fiecare problemă se afișează într-o vizualizare aplatizată.
Utilizarea unei interogări adăugare cu un câmp multi-valoare
Puteți insera o singură valoare într-un câmp multi-valoare utilizând o interogare Adăugare. De exemplu, să presupunem că doriți să adăugați "Emil Emil" la câmpul Multi-valoare AtribuitLa din tabelul Probleme.
Notă Acesta este singurul tip de interogare Adăugare care funcționează cu un câmp multi-valoare.
-
Deschideți interogarea în Vizualizarea proiect.
-
Adăugați tabelul Probleme .
-
Pe fila Proiectare , faceți clic pe Adăugare.
-
În caseta de dialog Adăugare , selectați Probleme, apoi faceți clic pe OK.
-
În rândul Adăugare la din Grila de proiectare, selectați AtribuitLa.Valoare.
-
În rândul Câmp din Grila de proiectare, introduceți "Emil Antonescu".
-
Pentru a limita operațiunea de adăugare la anumite probleme, adăugați un câmp în grila Proiect, cum ar fi Titlu, eliminați Titlu din rândul Adăugare la , apoi introduceți criterii cum ar fi "Problema 3".
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Access vă poate solicita să confirmați dacă adăugați rândul selectat. Faceți clic pe Da pentru a insera rândul sau faceți clic pe Nu pentru a anula.
Rezultatul "Emil Emil" este acum adăugat la câmpul AtribuitLa pentru Problema 3.
Important Nu puteți utiliza o interogare Adăugare care face referire la un tabel care conține un câmp multi-valoare. De exemplu, următoarea interogare nu este validă:
INSERT INTO [NewIssues] ( ID, Title, AssignedTo ) SELECT Issues.ID, Issues.Title, Issues.AssignedTo FROM Issues;
Utilizarea unei interogări de actualizare cu un câmp multi-valoare
Puteți utiliza o interogare actualizare pentru a modifica o singură valoare dintr-un câmp multi-valoare la o altă valoare. În acest exemplu, doriți să actualizați câmpul multi-valoare AtribuitLa pentru a înlocui "Kelly Rollin" cu "Lisa Miller".
-
Deschideți interogarea în Vizualizarea proiect.
-
Adăugați tabelul Probleme .
-
Pe fila Proiectare , faceți clic pe Actualizare.
-
Glisați AssignedTo.Value în grila Interogare.
-
În rândul Actualizare la , introduceți "Lisa Miller".
-
În rândul Criterii , introduceți "Kelly Rollin".
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Access vă poate solicita să confirmați dacă adăugați rândul selectat. Faceți clic pe Da pentru a insera rândul sau faceți clic pe Nu pentru a anula.
Rezultat Lisa Miller o înlocuiește pe Kelly Rollin în câmpul AtribuitLa pentru toate problemele corespunzătoare.
Utilizarea unei interogări Ștergere cu un câmp multi-valoare
Atunci când lucrați cu un tabel care conține un câmp multi-valoare, puteți utiliza o interogare de ștergere pentru a șterge înregistrările care conțin o anumită valoare dintr-un câmp multi-valoare sau pentru a șterge o anumită valoare dintr-un câmp multi-valoare din toate înregistrările din tabel. În exemplul următor, să presupunem că doriți să ștergeți "David Hamilton" din tabelul Probleme.
Important Atunci când utilizați o interogare de ștergere pentru a șterge un câmp multi-valoare care conține date, pierdeți definitiv acele date; nu puteți anula ștergerea. Din acest motiv, trebuie să faceți backup bazei de date înainte să ștergeți câmpuri de tabel sau alte elemente de bază de date.
Pentru a șterge o anumită valoare dintr-un câmp multi-valoare din toate înregistrările
-
În fila Creare, în grupul Interogări, faceți clic pe Proiectare interogare.
-
Adăugați tabelul Probleme .
-
Deschideți interogarea în Vizualizarea proiect.
-
Pe fila Proiectare , faceți clic pe Ștergere.
-
În rândul Criterii , introduceți "David Hamilton".
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Access vă poate solicita să confirmați dacă ștergeți înregistrările. Faceți clic pe Da pentru a șterge înregistrările sau pe Nu pentru a anula.
Rezultat David Hamilton este eliminat pentru toate problemele corespunzătoare.
Ștergerea înregistrărilor care conțin o anumită valoare într-un câmp multi-valoare
-
În fila Creare, în grupul Interogări, faceți clic pe Proiectare interogare.
-
Adăugați tabelul Probleme .
-
Deschideți interogarea în Vizualizarea proiect.
-
Pe fila Proiectare , faceți clic pe Ștergere grup.
-
Pe fila Proiectare , în grupul Rezultate , faceți clic pe săgeata de sub Vizualizare , apoi faceți clic pe Vizualizare SQL.
-
Introduceți următoarea instrucțiune SQL:
DELETE FROM Issues WHERE (((Issues.AssignedTo.Value)="David Hamilton"));
Notă În acest caz, puteți utiliza doar o instrucțiune SQL, nu grila de proiectare. În cazul în care comutați la vizualizarea Grilă proiect, Access adaugă un asterisc (*) după instrucțiunea DELETE, pe care ar trebui să o eliminați din vizualizarea SQL.
-
Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.
Access vă poate solicita să confirmați dacă ștergeți înregistrările. Faceți clic pe Da pentru a șterge înregistrările sau pe Nu pentru a anula.
Rezultat Toate problemele în care David Hamilton este atribuit sunt eliminate.