logo

GRUPPE ETTER vs. BESTILL ETTER

Denne artikkelen forklarer den fullstendige oversikten over GROUP BY- og ORDER BY-klausulen. De brukes hovedsakelig til å organisere data innhentet av SQL-spørringer. Forskjellen mellom disse klausulene er et av de vanligste stedene å sette seg fast når du lærer SQL . Hovedforskjellen mellom dem er det GROUP BY-leddet er aktuelt når vi ønsker å bruke aggregerte funksjoner til mer enn ett sett med rader. ORDER BY-klausulen gjelder når vi ønsker å få dataene innhentet ved en spørring i sorteringsrekkefølgen . Før vi gjør sammenligningen, vil vi først kjenne til disse SQL-klausulene.

GRUPPE ETTER vs. BESTILL ETTER

BESTILL ETTER Klausul

ORDER BY-leddet brukes i SQL-spørringer for å sortere dataene som returneres av en spørring i stigende eller synkende rekkefølge. Hvis vi utelater sorteringsrekkefølgen, sorterer den det oppsummerte resultatet i stigende rekkefølge som standard. ORDER BY-leddet, som GROUP BY-leddet, kan brukes sammen med SELECT-setningen. ASC angir stigende rekkefølge, mens DESC angir synkende rekkefølge.

Følgende er syntaksen for å bruke ORDER BY-leddet i en SQL-setning:

zeenat aman skuespiller
 SELECT expressions FROM tables [WHERE conditions] ORDER BY expression [ ASC | DESC ]; 

La oss forstå hvordan ORDER BY-klausulen fungerer ved hjelp av følgende eksempel. Anta at vi har et bord utvikler som inneholder følgende data:

GRUPPE ETTER vs. BESTILL ETTER

Vi kan se at disse resultatene ikke vises på en organisert måte. Anta at vi ønsker å organisere resultater i stigende eller synkende rekkefølge basert på staten kolonne . I så fall trenger vi kommandoen ORDER BY for å få ønsket resultat. Vi kan gjøre dette ved å utføre kommandoen som følger:

 mysql> SELECT D_name, D_state, D_salary FROM developers ORDER BY D_state ASC; 

Her er utgangen der vi vil få de ønskede resultatene:

GRUPPE ETTER vs. BESTILL ETTER

GROUP BY klausul

GROUP BY-leddet brukes i SQL-spørringer for å organisere data som har samme attributtverdier. Vanligvis bruker vi den med SELECT-setningen . Det er alltid å huske at vi må plassere GROUP BY-leddet etter WHERE-leddet. I tillegg er det tempo før ORDER BY-klausulen.

Vi kan ofte bruke denne klausulen i samarbeid med aggregerte funksjoner som SUM, AVG, MIN, MAX og COUNT for å produsere sammendragsrapporter fra databasen. Det er viktig å huske at attributtet i denne klausulen må vises i SELECT-leddet, ikke under en aggregert funksjon. Hvis vi gjør det, vil spørringen være feil. Som et resultat blir GROUP BY-leddet alltid brukt sammen med SELECT-leddet. Spørringen for GROUP BY-leddet er gruppert spørring, og den returnerer en enkelt rad for hvert gruppert objekt.

arraylist og linkedlist

Følgende er syntaksen for å bruke GROUP BY-klausul i en SQL-setning:

 SELECT column_name, function(column_name) FROM table_name WHERE condition GROUP BY column_name; 

La oss forstå hvordan GROUP BY-klausulen fungerer ved hjelp av et eksempel. Her vil vi demonstrere det med samme tabell.

Anta at vi vil vite utviklers gjennomsnittslønn i en bestemt stat og organiser resultatene i synkende rekkefølge basert på tilstandskolonnen. I så fall trenger vi både GROUP BY og ORDER BY kommandoen for å få ønsket resultat. Vi kan gjøre dette ved å utføre kommandoen som følger:

 mysql> SELECT D_state, avg(D_salary) AS salary FROM developers GROUP BY D_state ORDER BY D_state DESC; 

Denne spørringen dannet i utgangspunktet et mellomresultat som har gruppert staten. Neste, den AVG funksjonen utføres på hver gruppe av tilstander, sorter deretter resultatet i synkende rekkefølge, og til slutt vil vi få de ønskede resultatene som vist nedenfor:

GRUPPE ETTER vs. BESTILL ETTER

Nøkkelforskjeller mellom GROUP BY og ORDER BY

Følgende er de viktigste forskjellene mellom Group By og Order By-klausulen:

  • Group By-klausulen brukes til å gruppere data basert på samme verdi i en bestemt kolonne. ORDER BY-leddet, derimot, sorterer resultatet og viser det i stigende eller synkende rekkefølge.
  • Det er obligatorisk å bruke aggregeringsfunksjonen for å bruke Grupper etter. På den annen side er det ikke obligatorisk å bruke aggregatfunksjonen for å bruke Bestill etter.
  • Attributtet kan ikke være under GROUP BY-setning under aggregatfunksjon, mens attributtet kan være under ORDER BY-setning under aggregatfunksjon.
  • Group By-klausul kontrollerer presentasjonen av tupler, som betyr at gruppering gjøres basert på likheten mellom radens attributtverdier. I motsetning til dette, kontrollerer ORDER BY-klausulen presentasjonen av kolonner, som betyr at rekkefølgen eller sorteringen gjøres basert på kolonnens attributtverdier enten i stigende eller synkende rekkefølge.
  • GROUP BY plasseres alltid etter WHERE-leddet, men før ORDER BY-setningen. På den annen side brukes ORDER BY alltid etter GROUP BY-setningen.

GRUPPE ETTER vs. ORDER BY Sammenligningsdiagram

Følgende sammenligningsdiagram forklarer hovedforskjellene deres på en rask måte:

SN GRUPPE AV REKKEFØLGE ETTER
1. Den brukes til å gruppere radene som har samme verdier. Den sorterer resultatsettet enten i stigende eller synkende rekkefølge.
2. Det kan være tillatt i CREATE VIEW-setningen. Det er ikke tillatt i CREATE VIEW-setningen
3. Den styrer presentasjonen av rader. Den styrer presentasjonen av kolonner.
4. Attributtet kan ikke være under aggregert funksjon under GROUP BY-setning. Attributtet kan være under aggregert funksjon under ORDER BY-setning.
5. Den brukes alltid før ORDER BY-leddet i SELECT-setningen. Den brukes alltid etter GROUP BY-leddet i SELECT-setningen.
6. Det er obligatorisk å bruke aggregerte funksjoner i GROUP BY. Det er ikke obligatorisk å bruke aggregerte funksjoner i ORDER BY.
7. Her gjøres grupperingen basert på likheten mellom radens attributtverdier. Her er resultatsettet sortert basert på kolonnens attributtverdier, enten stigende eller synkende rekkefølge.

Konklusjon

GROUP BY- og ORDER BY-klausulene sammenlignes i denne artikkelen. Begge klausulene er ekstremt nyttige SQL-databasefunksjoner. Når vi ønsker å danne en gruppe med rader, bruker vi GROUP BY-leddet. Hvis vi ønsker å organisere data i stigende eller synkende rekkefølge basert på en bestemt kolonne, bruker vi ORDER BY-klausulen. De har ikke noe forhold fordi begge brukes til to forskjellige formål. Vi kan imidlertid kombinere dem for å tjene spesielle formål eller kan bruke dem individuelt avhengig av omstendighetene. Vi kan bare bruke disse klausulene med SELECT-setningen.

java erstatte tegn i streng