Hop til teksten

IT FJERNUNDERVISNING
- IT kurser når Du har tid!

Gruppering af data

Med GROUP BY kan man gruppere sine data og på den måde tælle, summe eller andet inden for grupper.

Det kan se sådan her ud:

SELECT Color, COUNT(ProductID) 
  FROM Production.Product
  GROUP BY Color;

Der kan fortælle dig, hvor mange produkter, der er af hver farve.

Bemærk

  • Felter, der er angivet i feltlisten i starten af forespørgslen SKAL også være i GROUP BY udtrykket.
  • Men felter i GROUP BY udtrykket behøver ikke være i feltlisten.
  • Felter, der indeholder NULL værdien bliver lagt i samme gruppe.

Gruppering på flere kolonner

Man kan godt gruppere på flere kolonner - f.eks. sådan her:

SELECT COUNT(BusinessEntityID) AS AntalMedarbejdere,
      Gender, OrganizationLevel
  FROM HumanResources.Employee 
  GROUP BY Gender, OrganizationLevel;

Der kan fortælle dig, hvor mange der er af hvert køn på hvert organisations niveau.

Sortering

Og ja, man kan naturligvis også sortere sådan en grupperet forespørgsel

SELECT COUNT(BusinessEntityID) AS AntalMedarbejdere,
      Gender, OrganizationLevel
  FROM HumanResources.Employee 
  GROUP BY Gender, OrganizationLevel
  ORDER BY Gender;

Hvis man skulle finde det interessant.

Filtrering

Og endelig kan man filtere sin forespørgsel. Det kan gøres på to måder

SELECT COUNT(BusinessEntityID) AS AntalMedarbejdere,
      Gender, OrganizationLevel
  FROM HumanResources.Employee 
  WHERE OrganizationLevel > 2
  GROUP BY Gender, OrganizationLevel;

Der så kun viser informationer om medarbejdere med organisationsniveau over 2.

Vil man til gengæld filtere på antallet af medarbejdere i hver gruppe ser der sådan her ud

SELECT COUNT(BusinessEntityID) AS AntalMedarbejdere,
      Gender, OrganizationLevel
  FROM HumanResources.Employee 
  GROUP BY Gender, OrganizationLevel
  HAVING COUNT(BusinessEntityID) > 10;

Der så kun vil vise informationer i de tilfælde, at der er flere end 10 medarbejdere i gruppen.

Når du har betalt for kurset får du adgang til øvelser til hver lektion. Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.