Avatar billede hmortensen Nybegynder
01. juni 2005 - 20:10 Der er 9 kommentarer og
1 løsning

Tæller rækker hvor der er mere end en

Hej

Jeg ønsker at tælle de rækker hvor der er mere end en. Jeg har forsøgt med denne forespørgelse, men den returnere en fejl.

SELECT s, COUNT(i)
FROM t
GROUP BY s
WHERE COUNT(i) > 1
Avatar billede arne_v Ekspert
01. juni 2005 - 20:12 #1
Prøv:


SELECT s, COUNT(i)
FROM t
GROUP BY s
HAVING COUNT(i) > 1
Avatar billede hmortensen Nybegynder
01. juni 2005 - 20:31 #2
Så var den der.
Tak for hjælpen :)
Avatar billede arne_v Ekspert
01. juni 2005 - 20:35 #3
så ligger jeg er svar
Avatar billede hmortensen Nybegynder
01. juni 2005 - 20:53 #4
Det blev faktisk ikke helt rigtigt. Der skal også grupperes på `i`.

Når jeg har data som:
Hans - Cykel
Hans - Cykel
Ole - Cykel
Jens - Knallert
Hans - Bil
Ole - Knallert
Hans - Bil
Jens - Knallert
Jens - Bil
Hans - Knallert

Ud fra det vil jeg gerne have:
Hans - 3
Ole - 2
Jens - 2

Så jeg kun får antallet af forskellige rækker per navn.
Avatar billede arne_v Ekspert
01. juni 2005 - 22:22 #5
er det

SELECT s, COUNT(DISTINCT i)
FROM t
GROUP BY s
HAVING COUNT(DISTINCT i) > 1

du leder efter ?
Avatar billede hmortensen Nybegynder
02. juni 2005 - 00:13 #6
Havde prøvet lidt som det, men det gir en:
Unknown column 'i' in 'having clause'
Avatar billede hmortensen Nybegynder
02. juni 2005 - 00:20 #7
Virkede sådan her:
SELECT s, COUNT(DISTINCT i)
FROM t
GROUP BY s
HAVING COUNT(i) > 1

Mange tak for den ekstra hjælp :)
Avatar billede hmortensen Nybegynder
02. juni 2005 - 00:29 #8
Nu bliver det snart flovt, men hvorfor fejler den her sætning:
SELECT i FROM t GROUP BY i WHERE s = 'X'

Prøvede med, den her men den giver forkert resultat:
SELECT i, s FROM t GROUP BY i HAVING s = 'X'
Avatar billede arne_v Ekspert
02. juni 2005 - 07:42 #9
Jeg tror at WHERE skal før GROUP BY
Avatar billede hmortensen Nybegynder
02. juni 2005 - 09:19 #10
Jo, det hjalp.
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