Utilizarea interogărilor SQL - baze de date

Limba de interogare constă într-o SELECTARE. Acesta este utilizat împreună cu multe opțiuni și sugestii.

Sintaxa celei mai simple forme a instrucțiunii SELECT:







  • Numele câmpurilor din listă sunt separate prin virgule;
  • Pentru a selecta toate câmpurile, utilizați caracterul cu caracter oprit (*);
  • Opțiunea ALL (setată în mod implicit) înseamnă că rezultatul selecției va conține toate înregistrările, inclusiv cele duplicate;
  • Când se utilizează opțiunea DISTINCT, rezultatul nu va conține rânduri duplicat;
  • Dacă numele câmpurilor conțin un spațiu, acestea sunt închise în paranteze pătrate.

Condițiile de preluare a datelor sunt specificate utilizând clauza WHERE.

Operatori de comparare: =., =, <=. p="">

  • ALTÂND ... ȘI este folosit pentru a selecta înregistrări în care valorile câmpului se află într-un interval specificat;
  • IN este folosit pentru a selecta înregistrări în care valoarea unui câmp se potrivește cu cel puțin una dintre valorile unei liste date;
  • LIKE este folosit pentru a compara valoarea unui câmp cu o valoare specificată folosind șabloane.
  • ȘI - pentru fiecare înregistrare inclusă în rezultat, trebuie îndeplinite toate constrângerile specificate;
  • SAU - înregistrarea este inclusă în selecția rezultată dacă este îndeplinită cel puțin una dintre constrângerile specificate;
  • Când se utilizează operatori de îmbinare, fiecare expresie logică este închisă între paranteze.

Pentru a evita interogările inutile în baza de date, utilizați variabilele ORDER BY și suffix.

Pentru a comanda datele din eșantion, utilizați clauza ORDER BY. sintaxa:

  • ASC - ascendent;
  • DESC - descendent;
  • În locul numelui câmpului, puteți utiliza numărul ordinal al câmpului din listă după cuvântul SELECT.

Pseudonime - a schimbat numele câmpurilor. Acestea sunt utilizate la stabilirea câmpurilor calculate. Alias ​​este plasat după numele câmpului sau calculate după propunerea de câmpul cheie AS: SELECT [Cod produs], comanda, Vindem Pret, Pret * VÂNDUT AS [Suma vânzărilor]

Gruparea înregistrărilor este combinația de înregistrări în conformitate cu valorile câmpului dat. Oferta GROUP BY. Împreună cu acesta se utilizează funcții de agregare. În acest caz, ele sunt utilizate pentru a calcula totalurile pentru grupurile individuale de date.

Utilizarea câmpurilor calculate







Bazat pe masa de date „vânzări“, se calculează pentru fiecare produs suma de bani primită-TION pentru bunurile vândute (produs de prețul și cantitatea de bunuri vândute), iar suma cu care mărfurile comandate (produsul de preț și cantitatea comandata-TION a mărfurilor), precum și diferența printre ei:

Specificați aliasurile câmpurilor calculate în interogarea anterioară.

În tabelul "Vânzări", calculați numărul de intrări din câmpul "Vărsat", numărul minim și cel maxim de mărfuri vândute, suma totală a mărfurilor vândute și valoarea medie a mărfurilor vândute.

Calculați numărul de achiziții de bunuri efectuate de fiecare client.

În ordinea anterioară, selectați numai acei clienți care au efectuat mai mult de 10 achiziții simultan și aranjați rezultatele eșantionului în ordine crescătoare:

Limba SQL vă permite să extrageți date din mai multe tabele. Se efectuează operația de conectare. Metode de conectare: conexiune la egalitate, conexiune inegalitate, conexiuni externe. Pentru a seta tipul conexiunii, utilizați clauza WHERE.

Aderarea la egalitate se face de câmpul comun pentru mai multe mese. sintaxa:

Dacă utilizați o conexiune externă, rezultatul interogării va conține toate înregistrările unuia dintre tabele, chiar dacă nu există valori de potrivire în tabelul asociat. Acesta este implementat folosind instrucțiunea OUTER JOIN:

LEFT - conexiune exterioară stângă, DREAPTA - conexiune exterioară dreaptă, FULL - conexiune externă completă.

O subchetă este o interogare plasată într-o altă interogare.

  • Subqueries ar trebui să fie închise în paranteze;
  • Clauza ORDER BY poate fi utilizată numai în interogarea principală;
  • Semnalele care trimit mai multe înregistrări pot fi utilizate numai cu operatori multivariate;
  • În interogarea principală, nu puteți utiliza instrucțiunea BETWEEN.

Interogările care includ mai multe instrucțiuni SELECT se numesc interogări compuse. Reguli pentru combinarea interogărilor:

  • fiecare dintre interogările care intră în sindicat trebuie să returneze același număr de câmpuri;
  • Tipurile de câmpuri returnate ca urmare a fiecărei solicitări trebuie să se potrivească.
  • când se utilizează operatorul UNION, rezultatele executării interogărilor individuale sunt combinate, înregistrările duplicate sunt excluse;
  • Când se utilizează instrucțiunea UNION ALL, înregistrările duplicate sunt incluse în selecția rezultată;

Selectați înregistrări din două tabele utilizând o conexiune la egalitate.

Alegeți din tabelul „Clienți“ domeniului în care informațiile cu privire la numele de cus-ENTOV și din tabelul „vânzări“ - câmpurile care conțin informații despre achiziționarea Kah făcute de către clienți. Pentru a utiliza tabelele comune cu caracter obligatoriu pentru ambele tabele câmpul „Cod Client“:

Completați această solicitare cu o propunere de grupare și un câmp care conține funcția agregată.

cerere fir Măsurabile astfel încât sa discutat mai sus, rezultatele au fost grupate în câmpurile „Name“, „Nume“, „Orientul Mijlociu“, iar pentru fiecare client afișează numărul total de achiziții:

Selectați înregistrări din trei tabele conexe.

Includeți informații despre denumirea mărfurilor din tabelul "Bunuri":

Creați legături externe stânga și dreapta.

Alegeți din tabelul "Produse" o listă de produse, din tabelul "Vânzări" - numărul total de mărfuri vândute:

Creați o interogare complexă care utilizează o subchetare.

Alegeți din tabelul "Informații vânzări" despre vânzările de bunuri cu numele "Delphi 5":







Articole similare

Trimiteți-le prietenilor: