Hi
Ein Wirtschaftsverband füllt folgende Umsatztabelle:
Firma|Jahr|Quartal|Produktgruppe|Land|Betrag
Ich möchte abfragen
1. wieviel unterschiedliche Firmen in jedem Quartal
2. wieviel unterschiedliche Firmen in Q1,Q1 = HY1
3. wieviel unterschiedliche Firmen in Q3,Q4 = HY2
4. wieviel unterschiedliche Firmen in Q1 - Q4 = FY
Einträge pro Produktgruppe, Land für bestimmte Jahre gemacht haben.
Ein erster Ansatz ist, um mal zu gucken, wie ich überhaupt distinct für
bestimmte Quartale zähle, ist:
Da kommt dann so ein Ergebnis:
2008|IndexLand=2|IndexProduktgruppe=3|HY1=5|HY2=0
2008|IndexLand=3|IndexProduktgruppe=3|HY1=0|HY2=4
Pro Zeile ist die 0 wechselnd entweder in HY1 oder HY2
was nicht sein kann. Ich denke also, ich mache grundsätzlich was
falsch. Kann mir jemand mal den entscheidenen Hinweis geben, wie ich
vernünftig zähle. Ich denke es kommt wohl im Kern auf diesen if-Ausdruck an, den ich nicht gebacken kriege.
Ein Wirtschaftsverband füllt folgende Umsatztabelle:
Firma|Jahr|Quartal|Produktgruppe|Land|Betrag
Ich möchte abfragen
1. wieviel unterschiedliche Firmen in jedem Quartal
2. wieviel unterschiedliche Firmen in Q1,Q1 = HY1
3. wieviel unterschiedliche Firmen in Q3,Q4 = HY2
4. wieviel unterschiedliche Firmen in Q1 - Q4 = FY
Einträge pro Produktgruppe, Land für bestimmte Jahre gemacht haben.
Ein erster Ansatz ist, um mal zu gucken, wie ich überhaupt distinct für
bestimmte Quartale zähle, ist:
Code:
SELECT Jahr, Land, Produktgruppe, if(q<3,COUNT(distinct company),0) AS HY1, if(q>2,COUNT(distinct company),0) AS HY2 FROM tabelle WHERE Jahr IN (2008,2009) GROUP BY Jahr, Land, Produktgruppe
2008|IndexLand=2|IndexProduktgruppe=3|HY1=5|HY2=0
2008|IndexLand=3|IndexProduktgruppe=3|HY1=0|HY2=4
Pro Zeile ist die 0 wechselnd entweder in HY1 oder HY2
was nicht sein kann. Ich denke also, ich mache grundsätzlich was
falsch. Kann mir jemand mal den entscheidenen Hinweis geben, wie ich
vernünftig zähle. Ich denke es kommt wohl im Kern auf diesen if-Ausdruck an, den ich nicht gebacken kriege.
Kommentar