login  Naam:   Wachtwoord: 
Registreer je!
 Forum

statistieken van de laatste 13 maanden opvragen

Offline lgryp - 19/08/2009 09:04 (laatste wijziging 19/08/2009 09:15)
Avatar van lgrypNieuw lid Hallo,
Ik heb een trac issue management systeem waaruit ik een statistiek wil halen.
Ik wil een query schrijven die het aantal tickets per compoment weergeeft en dit voor de laatste 13 maanden.
Het probleem is dat ik niet kan garanderen dat er elke maand minimum 1 ticket gecreeerd wordt voor een component, maw. er kunnen gaten zitten in de resultatenlijst.
Hoe kan ik er nu voor zorgen dat ik steeds exact 13 records terugkrijg?
Ik heb momenteel de volgende query. Deze bevat nog gaten en is niet beperkt tot de laatste 13 maanden.
  1. SELECT i1.component AS cComp, from_unixtime(t1.time,'%Y-%m') AS cMonth, count(*) AS closedCount
  2. FROM main.ticket_change t1
  3. JOIN main.ticket i1 ON t1.ticket = i1.id
  4. WHERE t1.FIELD = 'status' AND t1.newvalue = 'closed'
  5. AND component LIKE '%Tracona'
  6. GROUP BY from_unixtime(t1.time,'%Y-%m')


vinTage schreef:
Code tags gebruiken svp

2 antwoorden

Gesponsorde links
Offline vinTage - 19/08/2009 09:16
Avatar van vinTage Nieuw lid Kan je er niet gewoon een LIMIT 13 aan hangen dan ?
Offline lgryp - 19/08/2009 09:46
Avatar van lgryp Nieuw lid Jammer genoeg niet.
want voor de maanden dat er geen gegevens zijn heb je dan ook geen record. Het is de bedoeling dat ook voor die maanden er een record wordt gegenereerd, maar dan met een 0 als aantal.
Momenteel probeer ik iets met een temptable die 13 records bevat met de 13 laatste maanden. Hiermee kan ik dan een left join doen.
Maar ik veronderstel dat er toch een eenvoudigere manier moet zijn.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.178s