Avatar billede winkill Nybegynder
11. oktober 2000 - 06:36 Der er 8 kommentarer og
1 løsning

GROUP BY

Hvordan virker GROUP BY i en SQL string ? Hvilket formål tjæner denne parametre og hvordan bruges den ?
Avatar billede winkill Nybegynder
11. oktober 2000 - 06:37 #1
Det skulle vidst have stået \"i en SQL \"SELECT\" string\"
Avatar billede hornshoj Nybegynder
11. oktober 2000 - 09:41 #2
\"GROUP BY\" specificere hvordan dine felter du henter fra databasen skal grupperes.
F.eks:

SELECT Kategori, Tabel FROM Kategorier GROUP BY Tabel, Kategori

Giver flg. resultat:
kategori                                                                                            tabel                                             
---------------------------------------------------------------------------------------------------- --------------------------------------------------
sdfsadfsa                                                                                            Artikler
Test 3                                                                                              Artikler
Billeder                                                                                            Billeder
Institutions logoer                                                                                  Billeder

Husk: De felter du trækker ud skal ALLE specificeres i din GROUP BY
Avatar billede hornshoj Nybegynder
11. oktober 2000 - 09:46 #3
Jeg forsætter lige.
Hvis du nu ville tælle antallet af kategorier i de enkelte tabeller skulle du skrive:

select tabel,count(kategori) as antal_kategorier from kategorier group by tabel

Med group by giver det resultatet:
tabel                                              antal_kategorier
-------------------------------------------------- ----------------
Artikler                                          2
Billeder                                          2

Se ovenstående resultat (2 artikler og 2 i billeder)
Avatar billede kasseper Nybegynder
11. oktober 2000 - 09:59 #4
Det kan også bruges ligesom distinct disse to sql strenge giver det samme :


\"select distinct alder from mytable\"
\"select alder from mytable group by alder\"

DVS. at \'group by\' fjerner også dubletter......
Avatar billede winkill Nybegynder
11. oktober 2000 - 14:04 #5
Jeg er ikke sikker på at jeg fatter det helt.

Så vidt jeg kan se på hornshøjs nydelige skitse så virker group by nogen lunde sådan her:

SELECT T.Tekst,B.Billeder FROM TTabel T,BTabel B
Hvert returneret record indeholder en T.Tekst og en B.Billeder.

SELECT T.Tekst,B.Billeder FROM TTabel T,BTabel B GROUP BY T.Tekst,B.Billeder
Hvert returneret record indeholder hvad ???
Avatar billede hornshoj Nybegynder
11. oktober 2000 - 15:20 #6
Hmm.. jeg kan godt forstå du er lidt forvirret. Det første eksempel jeg gav dig er dårligt. Der kunne man bare have brugt en ORDER BY.
Men i eks. 2 gør du dit SQL udtryk bedre, fordi den ikke viser dubletter, som kasseper har skrevet.
Hvis du kunne skrive lidt mere om f.eks. et reelt problem du har, så kan jeg evt. give dig en SQL-sætning.
Avatar billede winkill Nybegynder
12. oktober 2000 - 11:24 #7
Hmm... er der ikke et sted på nettet hvor man kan læse mere om dette \"GROUP BY\" fænomen ?
Avatar billede hornshoj Nybegynder
12. oktober 2000 - 11:33 #8
Prøv her:
http://www.csa.ru/dblab/DB2/db2s0/db2s003.htm

Det skulle være en SQL Reference dog på engelsk.
Avatar billede winkill Nybegynder
12. oktober 2000 - 11:43 #9
Den kører lidt langsomt, ser på det senere...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

IT-Universitetet i København

CIO

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Ingeniør til Satellitkommunikation

Netcompany A/S

IT Consultant