SQL Server GROUP BY (Română)

rezumat: în acest tutorial, veți învăța cum să utilizați SQL ServerGROUP BY clauza pentru a aranja rânduri în grupuri de una sau mai multe coloane.

Introducere în SQL Server GROUP BY clauză

GROUP BY clauza vă permite să aranjați rândurile unei interogări în grupuri. Grupurile sunt determinate de coloanele pe care le specificați în clauza GROUP BY.,

următoarele ilustrează GROUP BY clauza sintaxa:

Code language: SQL (Structured Query Language) (sql)

În această interogare, GROUP BY clauza de produse-un grup pentru fiecare combinație de valori în coloanele enumerate în GROUP BY clauză.

luați în Considerare următorul exemplu:

În acest exemplu, am recuperat id-ul de client și a ordonat an de la clienții cu id-ul de client unu și doi.,după cum puteți vedea clar din ieșire, clientul cu id-ul a plasat o comandă în 2016 și două comenzi în 2018. Clientul cu id two a plasat două comenzi în 2017 și o comandă în 2018.

Să adăugați un GROUP BY clauza de interogare pentru a vedea efectul:

GROUP BY clauza aranjate primele trei rânduri în două grupuri și următorii trei rânduri în celelalte două grupuri cu combinații unice de id-ul de client și ordine an.,

din punct de vedere Funcțional vorbind, GROUP BY clauză în interogarea de mai sus a produs același rezultat ca și următoarea interogare care utilizează DISTINCT clauză:

SQL Server clauza GROUP BY și funcții agregate

În practică, GROUP BY clauză este adesea folosit cu funcții agregate pentru generarea de rapoarte de sinteză.

GROUP BY clauza aranjează rânduri în grupuri și o funcție agregată returnează rezumatul (count, min, max, average, sum, etc..) pentru fiecare grup.,

De exemplu, următoarea interogare returnează numărul de comenzi plasate de către client de an:

Dacă doriți să se refere la orice coloană sau o expresie care nu este listat în GROUP BY clauza, trebuie să utilizați coloana aia ca intrare de o funcție agregată. În caz contrar, veți primi o eroare, deoarece nu există nicio garanție că coloana sau expresia vor returna o singură valoare pe grup., De exemplu, următoarea interogare va eșua:

mai multe exemple de grup după clauză

Să luăm câteva exemple pentru a înțelege cum funcționează clauza GROUP BY.

Folosind clauza GROUP BY cu funcția COUNT() exemplu

următoarea interogare returnează numărul de clienți din fiecare oras:

În acest exemplu, GROUP BY clauza grupuri de clienți împreună prin oraș și COUNT() funcția returnează numărul de clienți din fiecare oraș.,în mod similar, următoarea interogare returnează numărul de clienți în funcție de stat și oraș.

Folosind clauza GROUP BY cu MIN și MAX funcțiile de exemplu,

următoarea declarație se întoarce minime și maxime lista de prețuri pentru toate produsele cu modelul 2018 de brand:

În acest exemplu, WHERE clauză este procesat înainte de GROUP BY clauza, ca întotdeauna.,v>

Folosind clauza GROUP BY cu funcția SUM exemplu

a se Vedea următoarele order_items tabel:

următoarea interogare folosește SUM() funcția pentru a obține valoarea netă de fiecare ordin:

În acest tutorial, ai învățat cum să utilizați SQL Server GROUP BY clauză pentru a aranja rânduri în grupuri de o anumită listă de coloane.,

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *