[MySQL] Count van id's having unieke combinatie twee velden

Pagina: 1
Acties:

  • Jurgle
  • Registratie: Februari 2003
  • Laatst online: 25-03 00:07

Jurgle

100% Compatible

Topicstarter
Wat een bagger titel, maar het komt het dichtst in de buurt van wat ik bedoel. Ik heb een SQL probleempje waar ik maar niet uit kom.

Ik heb een tabel (a, b, c), allemaal integers en behalve a (primary key) allemaal foreign keys.

Ik moet de count(b) selecten (grouped by b), waarbij de combinatie (b,c) uniek is.

Hoe doe ik dit? Of: hoe heet dit?, zodat ik er op kan googlen.

My opinions may have changed but not the fact that I am right ― Ashleigh Brilliant


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10-2025
waarom moet je count (1 record terug) grouped zijn op b?
1 record groupen is niet zo nuttig

waarom group je niet op b en c?

[ Voor 41% gewijzigd door BasieP op 05-01-2006 12:48 ]

This message was sent on 100% recyclable electrons.


  • Jurgle
  • Registratie: Februari 2003
  • Laatst online: 25-03 00:07

Jurgle

100% Compatible

Topicstarter
groupen op 1 record: gaf alleen aan dat ik door had dat b onderdeel moest zijn van de group by clause. alleen groupen op b en c heb ik gedaan, maar geeft niet de gewenste resultaten. Ik ben nu aan het kijken of het misschien ergens anders in de (huge) query fout gaat.

My opinions may have changed but not the fact that I am right ― Ashleigh Brilliant


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Als je deze records hebt, welke waarden wil je dan terug hebben?
a, b, c:
1, 1, 1
1, 1, 2
1, 1, 3
1, 2, 1
1, 2, 2
2, 3, 1
2, 3, 2
2, 4, 1

  • Jurgle
  • Registratie: Februari 2003
  • Laatst online: 25-03 00:07

Jurgle

100% Compatible

Topicstarter
b, c
1, 3
2, 2
3, 2
4, 1

b(1) heeft 3 unieke b,c combi's
b(2) 2
b(3) etc...

My opinions may have changed but not the fact that I am right ― Ashleigh Brilliant


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Dan moet je gewoon dit doen?
select b, count(c) from tabel group by b

en evt kan je dan count(distinct c) doen

  • frickY
  • Registratie: Juli 2001
  • Laatst online: 14:38
Dus je wilt uit ACM terug krijgen
code:
1
2
3
4
COUNT(*)  B
3         1
2         2
3         3


Waarbij
code:
1
2
3
4
5
a b c
1 1 1
1 1 2
1 1 2
1 1 3


Count 3 geeft voor B = 1, want er zijn maar 3 unieke combinaties?
Dan heb je toch genoeg aan
SQL:
1
SELECT COUNT(*), b FROM tabel GROUP BY b, c
:?

[ Voor 22% gewijzigd door frickY op 05-01-2006 14:07 ]


  • Jurgle
  • Registratie: Februari 2003
  • Laatst online: 25-03 00:07

Jurgle

100% Compatible

Topicstarter
Wat jullie zeggen klopt allemaal, bedankt voor de hulp. Stom dat ik zelf aan het klooien ben met subsubselects e.d.

My opinions may have changed but not the fact that I am right ― Ashleigh Brilliant

Pagina: 1