Forskel mellem gruppe efter og rækkefølge efter i SQL

Forfatter: Laura McKinney
Oprettelsesdato: 1 April 2021
Opdateringsdato: 15 Kan 2024
Anonim
Forskel mellem gruppe efter og rækkefølge efter i SQL - Teknologi
Forskel mellem gruppe efter og rækkefølge efter i SQL - Teknologi

Indhold


SQL tillader at organisere de data, der er opnået ved forespørgslen. Vi har to klausuler til organisering af de data, der er opnået fra forespørgslen, der er gruppe efter og ordre efter klausul. Det punkt, der adskiller gruppe efter og rækkefølge efter klausul, er det Gruppér efter klausul bruges, når vi vil anvende den samlede funktion til mere end et sæt tupler og Bestil efter klausul bruges, når vi vil sortere de data, der er opnået ved forespørgslen. Lad os diskutere nogle forskelle mellem gruppe efter klausul og ordre efter klausul ved hjælp af sammenligningstabellen vist nedenfor.

  1. Sammenligningstabel
  2. Definition
  3. Vigtige forskelle
  4. Konklusion

Sammenligningstabel

Grundlag for sammenligningGruppér efterBestil efter
GrundlæggendeGroup By bruges til at danne gruppen af ​​tuplesættet.Ordre efter bruges til at arrangere de opnåede data som et resultat af en forespørgsel i sorteret form.
Egenskab Attribut under samlet funktion kan ikke findes i gruppe efter klausul.Attribut under samlet kan være i rækkefølge efter klausul.
JordUdfærdiget på baggrund af ligheden mellem attributværdier.Udført på grund af stigende orden og faldende rækkefølge.

Definition af gruppe efter klausul

Samlede funktioner som gennemsnit, min, maks, sum, tælling anvendes på det enkelte sæt tupler. Hvis du vil anvende de samlede funktioner til gruppen af ​​tuppesættet, har vi Gruppe efter klausul for det. Gruppér efter klausul grupperer tuplerne, der har samme attributværdi.


Der er en ting at gøre Husk om Group By-klausulen, skal du være sikker på, at attribut under Gruppér efter klausul skal vises i VÆLG klausul men ikke under en samlet funktion. Hvis Group By-klausulen indeholder en attribut, der ikke er under SELECT-klausul, eller hvis den er under SELECT-klausul, men under samlet funktion, bliver forespørgslen forkert. Derfor kan vi sige, at Group By-klausulen altid bruges i samarbejde med SELECT-klausulen.

Lad os tage et eksempel for at forstå gruppe efter klausul.

VÆLG Afdeling _ID, gennemsnit (løn) som gennemsnitsløn fra lærergruppe efter afdeling_ID.


Du kan se, at der oprindeligt dannes et mellemresultat, der har grupperet afdelingerne.

Dernæst anvendes den samlede funktionsgennemsnit til hver gruppe af afdelinger, og resultatet vises nedenfor.

Definition af ordre efter klausul

Ordre efter klausul bruges til at vise data, der er opnået ved en forespørgsel i den sorterede rækkefølge. Ligesom gruppe efter klausul bruges ordre efter klausul også i samarbejde med SELECT-klausulen. Hvis du ikke nævner sorteringsordren, sorterer ordre efter klausul data i stigende rækkefølge. Du kan angive stigende rækkefølge som ASC og faldende rækkefølge som desc.

Lad os forstå funktionen af ​​ordre efter klausul ved hjælp af følgende eksempel. Vi har en lærertabel, og jeg vil anvende sortering i to kolonner Afdeling_Id og løn på lærertabellen.

Vælg Afdeling_ID, løn fra lærer rækkefølge efter afdeling_Id asc, lønbeskrivelse.

Du kan se, at det først arrangerer departementet _ID i stigende rækkefølge og derefter arrangerer det lønningerne i den samme afdeling i faldende rækkefølge.

  1. Gruppér efter klausul grupperer sæt tuplerne i en relation, der er under SELECT-klausulen. På den anden side sorterer ordren efter klausul resultatet af forespørgslen i stigende eller faldende rækkefølge.
  2. Attributten under samlet funktion kan ikke være under gruppe efter klausul, mens attributten under samlet funktion kan være der under rækkefølge efter klausul.
  3. Gruppering af tuple udføres på grundlag af lighed mellem tuplens attributværdier. På den anden side foregår ordren eller sorteringen på basis af stigende orden eller faldende rækkefølge.

Konklusion:

Hvis du vil danne gruppen af ​​tuplesættet, skal du bruge gruppe efter klausul. I tilfælde af at du vil arrangere dataene fra en enkelt kolonne eller mere end en kolonne i sæt tuplerne i stigende eller faldende rækkefølge, skal ordre efter klausul bruges.