Salt la conținutul principal
Asistență
Conectare

Găsirea înregistrărilor care au datele cele mai recente sau cel mai recent

Acest articol vă arată cum să utilizați interogările cu valori superioare și total interogări pentru a găsi cele mai recente sau mai vechi date dintr-un set de înregistrări. Acest lucru vă poate ajuta să răspundeți la o varietate de întrebări de afaceri, cum ar fi când un client a plasat Ultima dată o comandă sau care au fost cele mai bune cinci sferturi pentru vânzări, după oraș.

În acest articol

Prezentare generală

Puteți să clasificați datele și să revizuiți elementele cu cel mai înalt grad utilizând o interogare cu valori superioare. O interogare de valoare superioară este o interogare de selectare care returnează un număr specificat sau un procent de valori din partea de sus a rezultatelor, de exemplu, cele mai populare cinci pagini de pe un site web. Puteți utiliza o interogare cu valori superioare pentru orice tip de valori – nu trebuie să fie numere.

Dacă doriți să grupați sau să rezumați datele înainte de a-l clasifica, nu trebuie să utilizați o interogare cu valori superioare. De exemplu, să presupunem că trebuie să găsiți numerele de vânzări pentru o dată dată pentru fiecare oraș în care funcționează firma dvs. În acest caz, orașele devin categorii (trebuie să găsiți datele per oraș), astfel încât să utilizați o interogare de totaluri.

Atunci când utilizați o interogare cu valori superioare pentru a găsi înregistrări care conțin cele mai recente sau mai vechi date dintr-un tabel sau dintr-un grup de înregistrări, puteți să răspundeți la o varietate de întrebări de afaceri, cum ar fi următoarele:

  • Cine a făcut cele mai multe vânzări în ultimul timp?

  • Când a fost efectuat un client Ultima dată o comandă?

  • Când sunt următoarele trei zile de naștere în echipă?

Pentru a crea o interogare cu valori superioare, începeți prin a crea o interogare de selectare. Apoi, sortați datele în funcție de întrebarea dvs., indiferent dacă căutați în partea de sus sau de jos. Dacă trebuie să grupați sau să rezumați datele, transformați interogarea de selectare într-o interogare de totaluri. Apoi puteți să utilizați o funcție agregată, cum ar fi Max sau min , pentru a returna valoarea cea mai mare sau cea mai mică sau prima sau Ultima pentru a returna cea mai veche sau cea mai recentă dată.

Acest articol presupune că valorile de dată pe care le utilizați au tipul de date dată/oră. Dacă valorile de date se află într-un câmp text,.

Luați în considerare utilizarea unui filtru în locul unei interogări de valori superioare

Un filtru este de obicei mai bun dacă aveți o anumită dată în vedere. Pentru a determina dacă ar trebui să creați o interogare cu valori de top sau să aplicați un filtru, luați în considerare următoarele:

  • Dacă doriți să returnați toate înregistrările în care se potrivește data, este înainte sau mai târziu de o anumită dată, utilizați un filtru. De exemplu, pentru a vedea datele pentru vânzări între aprilie și iulie, aplicați un filtru.

  • Dacă doriți să returnați un număr specificat de înregistrări care au cele mai recente sau cele mai recente date într-un câmp și nu știți valorile exacte ale datei sau nu contează, creați o interogare cu valori superioare. De exemplu, pentru a vedea cele mai bune cinci trimestre de vânzări, utilizați o interogare cu valori superioare.

Pentru mai multe informații despre crearea și utilizarea filtrelor, consultați articolul aplicarea unui filtru pentru a vizualiza înregistrările selectate într-o bază de date Access.

Începutul paginii

Pregătirea datelor eșantion de urmărit împreună cu exemplele

Pașii din acest articol utilizează datele din următoarele tabele eșantion.

Tabelul angajați   

Nume

Prenume

Adresă

Localitate

CountryOrR egion

Data nașterii

Data angajării

Barnhill

Josh

1 Main St.

New York

SUA

05-feb-1968

10-iun-1994

Heloo

Waleed

52 1st St.

Boston

SUA

22-mai-1957

22-nov-1996

Roman

Guido

3122 75th Ave. S.W

Seattle

SUA

11-nov-1960

11-mar-2000

Bagel

Jean Philippe

1 Contoso Blvd.

Londra

Regatul Unit

22-mar-1964

22-iun-1998

Price

Julian

Calle Smith 2

Mexico City

Mexic

05-iun-1972

05-ian-2002

Hughes

Christine

3122 75th St. S.

Seattle

SUA

23-ian-1970

23-apr-1999

Riley

Steve

67 Big St.

Tampa

SUA

14-apr-1964

14-oct-2004

Birkby

Dana

2 Nosey Pkwy

Portland

SUA

29-oct-1959

29-mar-1997

Tabelul EventType    

TypeID

Tipul evenimentului

1

Lansarea produsului

2

Funcția Corporate

3

Funcția privat

4

Strângere fonduri

5

Prezentare comercială

6

Prelegere

7

Concert

8

Avea

9

Târg stradal

Tabelul Clienți    

IDClient

Firmă

Persoană de contact

1

Contoso, Ltd. Grafic

Ionut horia

2

Tailspin Toys

Ellen Adams

3

Fabrikam

Carol Philips

4

Wingtip Toys

Luminita Iallo

5

A. Datum

Samant

6

Adventure Works

Brian Burke

7

Institutul de proiectare

Stele

8

Școala de artă plastică

Mirela Duomanova

Tabelul evenimente    

IDEveniment

Tipul evenimentului

Client

Data evenimentului

Preț

1

Lansarea produsului

Contoso, Ltd.

4/14/2011

10.000 lei

2

Funcția Corporate

Tailspin Toys

4/21/2011

8.000 lei

3

Prezentare comercială

Tailspin Toys

01.05.11

$25.000

4

Avea

Graphic Design Institute

5/13/2011

4.500 lei

5

Prezentare comercială

Contoso, Ltd.

5/14/2011

$55.000

6

Concert

Școala de artă plastică

5/23/2011

12.000 lei

7

Lansarea produsului

A. Datum

6/1/2011

15.000 lei

8

Lansarea produsului

Wingtip Toys

6/18/2011

21.000 lei

9

Strângere fonduri

Adventure Works

6/22/2011

$1.300

10

Prelegere

Graphic Design Institute

6/25/2011

$2.450

11

Prelegere

Contoso, Ltd.

04.07.2011

$3.800

12

Târg stradal

Graphic Design Institute

04.07.2011

5.500 lei

Notă: Pașii din această secțiune Presupun că tabelele de tip clienți și evenimente se află în partea "unu" a relațiilor unu-la-mai-mulți cu tabelul Events. În acest caz, tabelul Events partajează câmpurile IDClient și TypeID. Interogările totale descrise în secțiunile următoare nu vor funcționa fără acele relații.

Lipirea datelor eșantion în foi de lucru Excel

  1. Porniți Excel. Se deschide un registru de lucru necompletat.

  2. Apăsați SHIFT+F11 pentru a insera o foaie de lucru (veți avea nevoie de patru).

  3. Copiați datele din fiecare tabel eșantion într-o foaie de lucru necompletată. Includeți titlurile de coloană (primul rând).

Crearea tabelelor bazei de date din foile de lucru

  1. Selectați datele din prima foaie de lucru, inclusiv titlurile de coloană.

  2. Faceți clic cu butonul din dreapta pe Panoul de navigare, apoi faceți clic pe Lipire.

  3. Faceți clic pe Da pentru a confirma că primul rând conține titluri de coloană.

  4. Repetați pașii 1-3 pentru fiecare foaie de lucru rămasă.

Găsirea celei mai recente sau mai puțin recente date

Pașii din această secțiune utilizează datele eșantion pentru a ilustra procesul de creare a unei interogări de valori superioare.

Crearea unei interogări cu valori de top de bază

  1. În fila Creare, în grupul Interogări, faceți clic pe Proiectare interogare.

  2. Faceți dublu clic pe tabelul angajați, apoi faceți clic pe Închidere.

    Dacă utilizați datele eșantion, adăugați tabelul Angajați la interogare.

  3. Adăugați câmpurile pe care doriți să le utilizați în interogare în grila de proiectare. Puteți să faceți dublu clic pe fiecare câmp sau să glisați și să fixați fiecare câmp într-o celulă necompletată din rândul câmp .

    Dacă utilizați tabelul eșantion, adăugați primul nume, numele de familie și câmpurile dată de naștere.

  4. În câmpul care conține valorile superioare sau inferioare (câmpul Data nașterii, dacă utilizați tabelul eșantion), faceți clic pe Sortare și selectați Ascendent sau Descendent.

    Ordinea de Sortare descendentă Returnează data cea mai recentă, iar ordinea de sortare ascendentă returnează cea mai veche dată.

    Important: Trebuie să setați o valoare în rândul Sortare doar pentru câmpurile care conțin datele. Dacă specificați o ordine de sortare pentru alt câmp, interogarea nu returnează rezultatele dorite.

  5. Pe fila Proiectare , în grupul Instrumente , faceți clic pe săgeata în jos de lângă toate (lista valori de sus ) și introduceți numărul de înregistrări pe care doriți să le vedeți sau selectați o opțiune din listă.

  6. Faceți clic pe Rulare Imagine buton pentru a rula interogarea și a afișa rezultatele într-o vizualizare Foaie de date.

  7. Salvați interogarea ca NextBirthDays.

Veți vedea că acest tip de interogare cu valori de top poate răspunde la întrebări de bază, cum ar fi cine este cea mai în vârstă sau cea mai tânără persoană din firmă. Următorii pași vă arată cum să utilizați expresii și alte criterii pentru a oferi putere și flexibilitate interogării. Criteriile prezentate în următorul pas returnează următoarele trei zile de naștere ale angajaților.

Adăugarea de criterii la o interogare

Acești pași utilizează interogarea creată în procedura anterioară. Puteți să urmăriți împreună cu o interogare de valori superioare diferite, atât timp cât conține date efective/oră, nu valori text.

Sfat:  Dacă doriți să înțelegeți mai bine cum funcționează această interogare, comutați între vizualizarea proiect și vizualizarea foaie de date la fiecare pas. Dacă doriți să vedeți codul de interogare real, comutați la vizualizarea SQL. Pentru a comuta între vizualizări, faceți clic cu butonul din dreapta pe fila din partea de sus a interogării, apoi faceți clic pe vizualizarea dorită.

  1. În panoul de navigare, faceți clic cu butonul din dreapta pe interogarea NextBirthDays, apoi faceți clic pe Vizualizare proiect.

  2. În grila de proiectare a interogării, în coloana din dreapta nașterii, introduceți următoarele:
    MonthBorn: datepart ("m", [data nașterii]).
    Această expresie extrage luna de la naștere, utilizând funcția datepart .

  3. În următoarea coloană din grila de proiectare a interogării, introduceți următoarele:
    DayOfMonthBorn: datepart ("d", [dată de naștere])
    această expresie extrage ziua din lună de la naștere, utilizând funcția datepart .

  4. Debifați casetele de selectare din rândul Afișare pentru fiecare dintre cele două expresii pe care tocmai le-ați introdus.

  5. Faceți clic pe rândul de Sortare pentru fiecare expresie, apoi selectați ascendent.

  6. În rândul criterii al coloanei dată de naștere , tastați următoarea expresie:
    month ([data nașterii]) > lună (dată ()) sau lună (data nașterii]) = month (date ()) și Day ([data nașterii]) >zi (dată ())
    această expresie face următoarele:

    • Lună ( [data nașterii]) > lună (dată ()) specifică faptul că data de naștere a fiecărui angajat se încadrează într-o lună viitoare.

    • Lună ( [data nașterii]) = month (date ()) și Day (data nașterii]) >zi (dată ()) specifică faptul că, dacă data nașterii are loc în luna curentă, ziua de naștere cade la sau după ziua curentă.

      Pe scurt, această expresie exclude toate înregistrările în care apare ziua de naștere între 1 ianuarie și data curentă.

      Sfat:  Pentru mai multe exemple de expresii ale criteriilor de interogare, consultați articolul exemple de criterii de interogare.

  7. Pe fila Proiectare , în grupul Inițializare interogare , tastați 3 în caseta retur .

  8. Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare Imagine buton .

Notă:  În propria interogare utilizând propriile date, este posibil să vedeți uneori mai multe înregistrări decât ați specificat. Dacă datele conțin mai multe înregistrări care partajează o valoare care se numără printre valorile superioare, interogarea va returna toate aceste înregistrări, chiar dacă aceasta înseamnă returnarea mai multor înregistrări decât ați dorit.

Începutul paginii

Găsirea datelor cele mai recente sau cel mai recent pentru grupurile de înregistrări

Utilizați o interogare de totaluri pentru a găsi cele mai vechi sau cele mai recente date pentru înregistrările care se încadrează în grupuri, cum ar fi evenimentele grupate după oraș. O interogare totaluri este o interogare de selectare care utilizează funcții agregate (cum ar fi Grupare după, Mîn, Max, Count, primași Ultima) pentru a calcula valori pentru fiecare câmp de ieșire.

Includeți câmpul pe care doriți să-l utilizați pentru categorii, pentru a Grupa după-și câmpul cu valorile pe care doriți să le rezumați. Dacă includeți alte câmpuri de ieșire-spuneți, numele clienților atunci când grupați după tipul evenimentului-interogarea va utiliza acele câmpuri pentru a face grupuri, modificând rezultatele, astfel încât să nu răspundă la întrebarea inițială. Pentru a eticheta rândurile utilizând alte câmpuri, creați o interogare suplimentară care utilizează interogarea totaluri ca sursă și adăugați câmpurile suplimentare la acea interogare.

Sfat:  Interogările de construcții din pași reprezintă o strategie foarte eficientă pentru a răspunde la întrebări mai complexe. Dacă întâmpinați probleme la lucrul cu o interogare complicată, luați în considerare dacă o puteți detalia într-o serie de interogări mai simple.

Crearea unei interogări de totaluri

Această procedură utilizează tabelul eșantion evenimente și tabelul eșantion EventType pentru a răspunde la această întrebare:

Când a fost cel mai recent eveniment pentru fiecare tip de eveniment, excluzând concerte?

  1. În fila Creare, în grupul Interogări, faceți clic pe Proiectare interogare.

  2. Faceți dublu clic pe tabelele evenimente și EventType.
    Fiecare tabel apare în secțiunea de sus a proiectantului de interogări.

  3. Faceți dublu clic pe câmpul EventType din tabelul EventType și câmpul EventDate din tabelul evenimente pentru a adăuga câmpurile la grila de proiectare a interogării.

  4. În grila de proiectare a interogării, în rândul criterii al câmpului EventType , introduceți <>concert.

    Sfat:  Pentru mai multe exemple de expresii de criterii, consultați articolul exemple de criterii de interogare.

  5. Pe fila Proiectare, în grupul Afișare/Ascundere faceți clic pe Totaluri.

  6. În grila de proiectare a interogării, faceți clic pe rândul Total al câmpului EventDate, apoi faceți clic pe Max.

  7. Pe fila Proiectare, în grupul Rezultate, faceți clic pe Vizualizare, apoi faceți clic pe SQL.

  8. În fereastra SQL, la sfârșitul clauzei SELECT, imediat după cuvântul cheie, înlocuiți MaxOfEventDate cu MostRecent.

  9. Salvați interogarea ca MostRecentEventByType.

Creați o a doua interogare pentru a adăuga mai multe date

Această procedură utilizează interogarea MostRecentEventByType din procedura anterioară pentru a răspunde la această întrebare:

Cine a fost clientul la cel mai recent eveniment al fiecărui tip de eveniment?

  1. În fila Creare, în grupul Interogări, faceți clic pe Proiectare interogare.

  2. Pe fila interogări , faceți dublu clic pe interogarea MostRecentEventByType.

  3. Pe fila tabele , faceți dublu clic pe tabelul evenimente și pe tabelul clienți.

  4. În proiectantul de interogări, faceți dublu clic pe următoarele câmpuri:

    1. În tabelul Events, faceți dublu clic pe EventType.

    2. În interogarea MostRecentEventByType, faceți dublu clic pe MostRecent.

    3. În tabelul clienți, faceți dublu clic pe firmă.

  5. În grila de proiectare a interogării, în rândul Sortare al coloanei EventType , selectați ascendent.

  6. Pe fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Începutul paginii

Aveți nevoie de ajutor suplimentar?

Extindeți-vă competențele Office
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider

Au fost utile aceste informații?

×