Access SQL: concepte de bază, vocabular și sintaxă

Access SQL: concepte de bază, vocabular și sintaxă

Important : Acest articol este tradus automat, consultați exonerarea de răspundere. Versiunea în limba engleză a acestui articol se poate găsi aici pentru referință.

Atunci când doriți pentru a regăsi date dintr-o bază de date, care solicită date utilizând Structured Query Language sau SQL. SQL este un limbaj de computer care seamănă foarte cu engleză, dar care înțeleagă programe de baze de date. Fiecare interogare când rulați utilizează SQL în spatele scenei.

Înțelegerea cum funcționează SQL vă poate ajuta să creați interogări mai bine și poate face mai ușor să înțeleagă cum se remediază o interogare care se returnează rezultatele dorite.

Acesta este unul dintre un set de articole despre Access SQL. Acest articol descrie utilizare de bază SQL pentru a selecta date și utilizează exemple pentru a ilustra sintaxa SQL.

În acest articol

Ce este SQL?

Bază de clauze SQL: SELECTAȚI, de unde

Sortarea rezultatelor: ordine după

Lucrul cu date rezumate: grupare după și HAVING

Combinarea rezultatele interogării: UNION

Ce este SQL?

SQL este un limbaj de computer pentru a lucra cu seturi de date și relațiile dintre ele. Programe de baze de date relaționale, cum ar fi Microsoft Office Access, utilizați SQL pentru a lucra cu datele. Spre deosebire de computer mai multe limbi, SQL nu este greu de citit și de înțeles, chiar și pentru începători o. Cum ar fi computer mai multe limbi, SQL este un standard internațional recunoscut de organismele de standardizare, cum ar fi ISO și ANSI.

Utilizați SQL pentru a descrie seturi de date care vă pot ajuta să răspundeți la întrebări. Atunci când utilizați SQL, trebuie să utilizați sintaxa corectă. Sintaxa este set de reguli care elementele o limbă sunt combinate corect. Sintaxa SQL se bazează pe Română sintaxă și utilizează multe dintre aceleași elemente ca Visual Basic pentru sintaxa Applications (VBA).

De exemplu, o simplă Instrucțiune SQL care reia o listă de nume de familie pentru persoanele de contact ale căror Prenume este Mary poate semăna cu aceasta:

SELECT Last_Name
FROM Contacts
WHERE First_Name = 'Mary';

Notă : SQL nu este utilizată doar pentru manipulare a datelor, ci și pentru crearea și modificarea proiectării obiectele bazei de date, cum ar fi tabele. Parte din SQL care este utilizat pentru crearea și modificarea obiectelor bazei de date se numește limbaj de definiție date (DDL). Acest articol nu tratează DDL. Pentru mai multe informații, consultați articolul crearea sau modificarea tabelelor sau indexurilor utilizând o interogare de definiție date.

Instrucțiunile SELECT

Pentru a descrie un set de date utilizând SQL, scrieți o instrucțiune SELECT. O instrucțiune SELECT conține o descriere completă a unui set de date pe care doriți să obțineți de la o bază de date. Aceasta include următoarele:

  • Tabelele ce conțin date.

  • Cum este asociată cu date din surse diferite.

  • Ce câmpuri sau calcule vor produce datele.

  • Criteriile pe care trebuie să corespundă cu datele pentru a fi incluse în calcule.

  • Dacă și cum să sortați rezultatele.

Clauze SQL

Cum ar fi o propoziție, o Instrucțiune SQL are clauze. Fiecare clauza efectuează o funcție pentru instrucțiunii SQL. Unele clauze sunt necesare într-o instrucțiune SELECT. Următorul tabel listează cele mai comune clauze SQL.

Clauză SQL

Ce face

Obligatoriu

SELECT

Listează câmpurile care conțin date de interes.

Da

FROM

Listează tabelele care conțin câmpurile listate în clauza SELECT.

Da

WHERE

Specifică criteriile de câmp ce trebuie îndeplinite de fiecare înregistrare pentru ca aceasta să fie inclusă în rezultate.

Nu

ORDER BY

Specifică modalitatea de sortare a rezultatelor.

Nu

GROUP BY

Într-o instrucțiune SQL care conține funcții agregate, listează câmpurile care nu sunt rezumate în clauza SELECT.

Doar dacă există astfel de câmpuri

HAVING

Într-o instrucțiune SQL care conține funcții agregate, specifică ce condiții se aplică la câmpurile care sunt rezumate în instrucțiunea SELECT.

Nu

Termeni SQL

Fiecare clauză SQL este compus din termenii-comparabilă cu părți de vorbire. Următorul tabel listează tipurile de termeni SQL.

Termen SQL

Comparabilă parte de vorbire

Definiție

Exemplu

identificator

substantivale

Un nume pe care îl utilizați pentru a identifica un obiect din baza de date, cum ar fi numele unui câmp.

Clienții. [Numărul de telefon]

operator

verbale sau adverb

Un cuvânt cheie care reprezintă o acțiune sau care modifică o acțiune.

AS

constantă

substantivale

O valoare care nu se modifică, precum un număr sau o valoare NULL.

42

expresie

adjectiv

O combinație de identificatori, operatori, constante și funcții care se evaluează la o singură valoare.

>= Produse.[Preț unitar]

Începutul paginii

Bază de clauze SQL: SELECTAȚI, de unde

O Instrucțiune SQL se realizează generale:

SELECT field_1
FROM table_1
WHERE criterion_1
;

Note : 

  • Acces ignoră sfârșituri de linie într-o Instrucțiune SQL. Cu toate acestea, luați în considerare utilizarea o linie pentru fiecare clauză pentru a îmbunătăți lizibilitatea instrucțiunile SQL de pentru singur și altele.

  • Fiecare instrucțiune SELECT se termină cu un punct și virgulă (;). Punct și virgulă pot apărea la sfârșitul ultimei clauze sau într-o linie în sine la sfârșitul instrucțiunii SQL.

Un exemplu în Access

Următoarele ilustrează o Instrucțiune SQL pentru o interogare de selectare simplă s-ar putea arăta în Access:

Fila obiect SQL afișând o instrucțiune SELECT

1. clauză SELECT

2. clauză FROM

3. clauza WHERE

Acest exemplu de Instrucțiune SQL citește "Selectați datele pe care este stocată în câmpurile denumite adresa de E-mail și de firmă din tabelul denumit persoanele de contact, mai exact în aceste înregistrări în care valoarea din câmpul localitate este Seattle."

Să examinăm exemplul, o clauză o dată, pentru a vedea cum funcționează sintaxa SQL.

Clauza SELECT

SELECT [E-mail Address], Company

Aceasta este clauza SELECT. Acesta constă într-un operator (selectare) urmat de două identificatori ([adresă de E-mail] și firmă).

Dacă un identificator conține spații sau caractere speciale (cum ar fi "adresa de E-mail"), acesta trebuie să fie încadrată între paranteze drepte.

O clauză SELECT nu trebuie să presupunem că tabelele care conțin câmpurile și aceasta nu puteți specifica toate condițiile pe care trebuie îndeplinite de date să fie incluse în calcule.

Clauza SELECT se afișează întotdeauna în fața clauza FROM într-o instrucțiune SELECT.

Clauza FROM

FROM Contacts

Aceasta este clauza FROM. Constă dintr-un operator (de la), urmat de un identificator (persoane de contact).

O clauză FROM listează câmpurile selectate.

Clauza WHERE

WHERE City="Seattle"

Aceasta este clauza WHERE. Acesta constă într-un operator (unde) urmată de o expresie (City = "Seattle").

Notă : Spre deosebire de selectare și din clauze, clauza WHERE este nu un element obligatoriu de o instrucțiune SELECT.

Pot fi multe dintre acțiunile pe care SQL vă permite să efectuați utilizând SELECT, FROM, și propoziții unde. Mai multe informații despre modul în care utilizați aceste clauze sunt prezentate în aceste articole:

Începutul paginii

Sortarea rezultatelor: ordine după

Cum ar fi Microsoft Excel, Access vă permite să sortați rezultatele interogării într-o foaie de date. De asemenea, puteți specifica în interogarea de modul în care doriți să sortați rezultatele atunci când rulați interogarea, utilizând o clauză ORDER BY. Dacă utilizați o clauză ORDER BY, este clauza ultima în instrucțiunii SQL.

O clauză ORDER BY conține o listă de câmpuri pe care doriți să îl utilizați pentru sortare, în aceeași ordine în care doriți să aplicați operațiuni de sortare.

De exemplu, să presupunem că doriți de rezultate sortate mai întâi după valoarea din câmpul firmei în ordine descrescătoare, și, dacă există înregistrări cu aceeași valoare pentru firmă, sortate în continuare după valorile din câmpul adresă de E-mail în ordine ascendentă. Clauza ORDER BY va semăna cu următoarea:

ORDER BY Company DESC, [E-mail Address]

Notă : În mod implicit, Access sortează valori în ordine crescătoare ordine (A-Z, cel mai mic la cel mai mare). Utilizați cuvântul cheie DESC de sortare a valorilor în ordine descendentă în schimb.

Pentru mai multe informații despre clauza ORDER BY, consultați subiectul clauza ORDER BY.

Începutul paginii

Lucrul cu date rezumate: grupare după și HAVING

Uneori, când doriți să lucrați cu date rezumate, cum ar fi total vânzări într-o lună sau cele mai costisitoare elementelor dintr-un inventar. Pentru a face acest lucru, puteți aplica un funcție agregată într-un câmp în clauza SELECT. De exemplu, dacă doriți ca interogare pentru a afișa numărul de adrese de e-mail pentru fiecare firmei, clauza SELECT poate semăna cu următoarea:

SELECT COUNT([E-mail Address]), Company

Funcții agregate pe care le puteți utiliza depind de tipul de date care se află în câmpul sau expresia pe care doriți să îl utilizați. Pentru mai multe informații despre funcții agregate disponibile, consultați articolul de Funcții agregate SQL.

Specificarea câmpurile care nu sunt utilizate într-o funcție agregată: clauza GROUP BY

Atunci când utilizați funcții agregate, de obicei, trebuie să creați o clauză GROUP BY. O clauză GROUP BY listează toate câmpurile la care vă nu se aplică o funcție agregată. Dacă aplicați funcții agregate la toate câmpurile dintr-o interogare, nu trebuie să creați clauza GROUP BY.

O clauză GROUP BY urmează imediat clauzei WHERE sau clauza FROM, dacă nu există nicio clauză WHERE. O clauză GROUP BY listează câmpurile așa cum apar acestea în clauza SELECT.

De exemplu, continuând în exemplul anterior, dacă clauza SELECT se aplică o funcție agregată [adresă de E-mail], dar nu pentru firmă, clauza GROUP BY ar aseamănă cu următoarele:

GROUP BY Company

Pentru mai multe informații despre clauza GROUP BY, consultați subiectul clauza GROUP BY.

Limitarea valori agregate, utilizând criteriile de grup: clauza HAVING

Dacă doriți să utilizați criterii pentru a limita rezultatele dvs, dar câmpul pe care doriți să aplicați criteriile este utilizată într-o funcție agregată, nu puteți utiliza o clauză WHERE. În schimb, utilizați o clauză HAVING. O clauză HAVING funcționează ca o clauză WHERE, dar este utilizat pentru date agregate.

De exemplu, să presupunem că utilizați funcția AVG (care calculează o valoare medie) cu primul câmp în clauza SELECT:

SELECT COUNT([E-mail Address]), Company

Dacă doriți ca interogarea să restricționați rezultatele pe baza valorii care funcția COUNT, nu puteți utiliza un criteriu pentru câmpul respectiv în clauza WHERE. În schimb, puteți amplasa criteriile într-o clauză HAVING. De exemplu, dacă doriți doar interogare pentru a returna rândurile dacă există mai mult de un e-mail adrese asociate cu firmei, clauza HAVING poate semăna cu următoarea:

HAVING COUNT([E-mail Address])>1

Notă : O interogare poate avea o clauză WHERE și o clauză HAVING-criterii pentru câmpurile care nu sunt utilizate într-o funcție agregată merg în clauza WHERE și criterii pentru câmpurile care sunt utilizate cu funcții agregate merg în clauza HAVING.

Pentru mai multe informații despre clauza HAVING, consultați subiectul HAVING clauză.

Începutul paginii

Combinarea rezultatele interogării: UNION

Atunci când doriți să revizuiți toate datele pe care este returnat de mai multe interogări de selectare similare împreună, ca un set de combinat, utilizați operatorul UNION.

Operatorul UNION vă permite să combinați două instrucțiunile SELECT într-una singură. Instrucțiunile SELECT care se combină trebuie să aibă același număr de câmpurile de ieșire, în aceeași ordine și cu tipurile de date identice sau compatibile. Atunci când rulați interogarea, datele din fiecare set de câmpuri corespondente sunt combinate într-un câmp de ieșire, astfel încât rezultatul interogării are același număr de câmpuri ca fiecare dintre instrucțiunile select.

Notă : În scopul efectuării unei interogări de uniune, tipurile de date Număr și Text sunt compatibile.

Atunci când utilizați operatorul UNION, de asemenea, puteți specifica dacă rezultatele interogării ar trebui să includă rândurile dublate, dacă există una, utilizând cuvântul cheie toate.

Sintaxa SQL de bază pentru o interogare de Uniune care combină două instrucțiunile SELECT este după cum urmează:

SELECT field_1
FROM table_1
UNION [ALL]
SELECT field_a
FROM table_a
;

De exemplu, să presupunem că aveți un tabel denumit produse și un alt tabel denumit servicii. Ambele tabele au câmpuri care conțin numele garanție produsul sau serviciul, preț, sau garantează disponibilitatea, și dacă vă oferă produsul sau serviciul exclusiv. Deși tabelul produse stochează informații despre garanție și servicii de tabel stochează garantează informații, informații de bază este la fel (dacă un anumit produs sau serviciu include promisiunea unei de calitate). Puteți utiliza o interogare de Uniune, cum ar fi următoarele, pentru a combina patru câmpuri din cele două tabele:

SELECT name, price, warranty_available, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee_available, exclusive_offer
FROM Services
;

Pentru mai multe informații despre cum să-l combinați instrucțiunile SELECT utilizând operatorul de Uniune, consultați combinarea rezultatelor mai multor interogări de selectare prin utilizarea unei interogări de Uniune.

Începutul paginii

Notă : Exonerare de răspundere pentru traducere automată: Acest articol a fost tradus de un sistem computerizat, fără intervenție umană. Microsoft oferă aceste traduceri automate pentru a ajuta utilizatorii vorbitori de alte limbi decât engleza să beneficieze de conținutul despre produsele, serviciile și tehnologiile Microsoft. Pentru că articolul a fost tradus de un computer, poate conține erori de vocabular, sintaxă sau gramatică.

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

Au fost utile aceste informații?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×