Archief - SQL: COUNT() van JOINed tabellen

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Radiance

Legacy Member
Ik heb vier tabellen die er ongeveer zo uitzien :

Categorieen
- id
- naam
Alarmen
- id
- identifier
- categorie
Oplossingen
- id
- alarm
- omschrijving
- status
- actief
Statussen
- id
- naam

Een Alarm is steeds van een bepaald categorie en kan meerdere oplossingen hebben (hoewel er steeds maar één actief is). Elke oplossing staat in een status (in behandeling, afgewerkt, ...).

Nu wil ik te zien krijgen hoeveel alarmen uit elke categorie in welk status zitten.
Dus ik wil terug krijgen :

Categorie 1
afgewerkt : 5
in behandeling : 10
Categorie 2
afgewerkt : 7
in behandeling : 9

Aangezien je maar één count() per query kan doen afaik zal ik ze status per status moeten doen, da's nu geen ramp. Maar dan nog krijg ik het niet klaar.

Code:
SELECT
	Categorieen.naam,
	COUNT(Alarmen.id) AS alarmen_afgewerkt
FROM Categorieen
JOIN Alarmen ON Categorieen.id = Alarmen.categorie
JOIN Oplossingen ON Alarmen.id = Oplossingen.alarm
GROUP BY
	Categorieen.naam
HAVING
	Oplossingen.status = 5 AND Oplossingen.actief = 1

Maar dat werkt dus niet.
Wat mis ik nog ?
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan