Avatar billede prebenrunge Nybegynder
12. september 2011 - 17:45 Der er 4 kommentarer og
1 løsning

SQL: Select afd, Count(personer) group by - sammenlagte afdelinger

Jeg skal bruge en oversigt over antal personer i vores afdelinger - MEN 2 afdelinger er lagt sammen så de skal tælles som en

den gamle select:
Select afd, count(Personer)Antal from firm where ansat='JA'
group by add, order by add;

Result:
afd, Antal
1, 8
2, 6
3, 8
4, 2
5, 3
6, 7

HVORDAN FÅR JEG LAGT 2 AFDELINGER SAMMEN ( afd 4 og 5)
så der står:
afd, Antal
1, 8
2, 6
3, 8
45, 5
6, 7
Avatar billede arne_v Ekspert
12. september 2011 - 17:56 #1
Proev og erstat afd med:

CASE afd WHEN 5 THEN 4 ELSE afd END
Avatar billede prebenrunge Nybegynder
12. september 2011 - 18:21 #2
nej, det giver bare det samme som Replace(afd,4,5) nemlig 2 linier med afd 4 uden at lægge dem sammen.
Avatar billede arne_v Ekspert
12. september 2011 - 18:30 #3
Ogsaa hvis du bruger konstruktionen nede i GROUP BY ??
Avatar billede prebenrunge Nybegynder
12. september 2011 - 18:55 #4
Jeps, du har ret, den skal stå begge steder, så virker den sådan:

Select Replace(afd,4,5), count(Personer)Antal from firm where ansat='JA'
group by Replace(afd,4,5), order by afd;

smider du et svar ?
Avatar billede arne_v Ekspert
12. september 2011 - 19:06 #5
svar
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