[sql] selectie en een telling in gerelateerde tabel

Pagina: 1
Acties:
  • 126 views sinds 30-01-2008
  • Reageer

  • trekker22
  • Registratie: Maart 2003
  • Laatst online: 24-11 07:39
Mijn sql is dusdanig goed dat ik wat met selectie, sorteringen,parameters en joins kan werken, maar hier kom ik niet uit en heb ook geen idee hoe dit op internet te vinden

huidige simpele query:

SELECT tblRUBRIEK.RUBRIEK_ID, tblRUBRIEK.RUBRIEK_NAAM
FROM tblRUBRIEK
ORDER BY tblRUBRIEK.RUBRIEK_NAAM;

nu is er nog een 2e koppeltabel genaamd tblBEDRIJF_RUBRIEK waarin relaties staan tussen bedrijven en rubrieken.

Wat ik nu wil is dat in mijn huidige select er een tupel bijkomt die de telling weergeeft van het het aantal keer dat deze rubriek voorkomt in de tblBEDRRIJF_RUBRIEK

mijn huidige uitkomst zou zijn:
RUBRIEK_ID RUBRIEK_NAAM
1 RUBRIEK_1
2 RUBRIEK_2

en ik wil hebben
RUBRIEK_ID_ RUBRIEK_NAAM RUBRIEK_COUNT
1 RUBRIEK_1 45
2 RUBRIEK_2 33

dus rubriek_1 heeft 45 records en dus gekoppelde bedrijven. Dit hoop ik in 1 query te kunnen doen, omdat ik de admin van een website achter de rubriek tussen haakjes wil vermelden hoeveel bedrijven er zijn gekoppeld aan de rubriek.

Ik snap wel hoe ik dit per rubriek kan doen, maar dat schiet niet op, dan zit ik met veel meer queries die ik ga uitvoeren.

Ik denk dat ik aan een GROUP BY met COUNT moet werken?

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Join die 2 tabellen, group by RUBRIEK_ID, RUBRIEK_NAAM en klaar ben je.

{signature}


  • trekker22
  • Registratie: Maart 2003
  • Laatst online: 24-11 07:39
Ja het is gelukt uiteindelijk!

SELECT tblRUBRIEK.RUBRIEK_ID, tblRUBRIEK.RUBRIEK_NAAM, Count(tblBEDRIJF_RUBRIEK.RUBRIEK_ID) AS Expr1
FROM tblRUBRIEK LEFT JOIN tblBEDRIJF_RUBRIEK ON tblRUBRIEK.RUBRIEK_ID = tblBEDRIJF_RUBRIEK.RUBRIEK_ID
GROUP BY tblRUBRIEK.RUBRIEK_ID, tblRUBRIEK.RUBRIEK_NAAM
HAVING (((tblRUBRIEK.RUBRIEK_ID)<>42))
ORDER BY tblRUBRIEK.RUBRIEK_NAAM;


was die group by and count door elkaar aan het halen!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Mooi dat het gelukt is. :)

Niet cruciaal, maar imo wel netter: De Rubriek_id ongelijk aan 42 voorwaarde kan ook gewoon in een where clause.

{signature}