Hallo Zusammen,
Nach 2 Wochen Trial und Error hab ich viel gelernt und auch einiges hinbekommen. Jetzt happerts aber...
>>>>Möchte Folgendes als Resultat - Zieltabelle<<<<
Artikel | Standardabweichung |
A | 90
B | 100
(Hier soll die Standardabweichung stehen, diese aber von Zahlen gruppiert auf Monatsebene sein)
Zur Erklärung
>>>>1) Ursprungstabelle<<<<
Habe eine Tabelle Rechnungen:
Artikel | Stk | Datum ...
A | 300 | 10.1.2009
A | 200 | 15.1.2009
A | 150 | 02.2.2009
A | 200 | 18.2.2009
A | 200 | 10.7.2009
B | 500 | 23.3.2009
B | 400| 14.4.2009
>>>>2) Guppiert auf Monatsebene<<<<
Artikel | Stk | Datum ...
A | 500| 1 (also Januar)
A | 350| 2 (also Februar)
A | 200| 7 (also July)
B | 500 | 3 (also März)
B | 400 | 4 (also April)
(später Frage ich noch eine zusätzliche Tabelle mit Monaten von 1-12 ab, damit alle Monate pro Teil gezeigt werden. Aber jetzt erst mal nur mit einer Tabelle)
>>>>3) Standardabweichung pro Artikel<<<<
also für A: Stdev (500,350,200) B:Stdev(500,400)
und dann eben die Tabelle wie Eingangs in Zieltabelle beschrieben.
Artikel | Standardabweichung |
A | 90
B | 100
(90 und 100 nur so hingeschrieben, nicht gerechnet)
(Irgendwann mal dann Stdev(500,350,0,0,0,0,200,0,0,0,0,0), 12 Monate eben. Aber wie gesagt, jetzt erst mal mit einer Tabelle.
>>>>Zu meiner Query<<<<<
(Sorry fuer die Englischen Bezeichnungen. QTY=Stück, 10a_Invoices = Tabelle Rechnungen, Part_No_=Artikel, Invdate=Datum der Rechnung)
>>>Stdev von einem Teil<<<<
Select Stdev(F1) as F2
FROM(
select sum(QTY) as F1
FROM 10a_Invoices where Part_No_='FD430163' and year(Invdate)=2007 group by month(Invdate))
--> Das geht und gibt mir die Standardabweichung, aber eben nur für einen Artikel.
>>>>Stdev aller Teile<<<<
Jetzt möcht ich aber natürlich, dass die Standardabweichung für alle Artikel gezeigt wird:
Meine Idee war noch ein Select vorne anschliessen auf Artikel gruppiert und die Unterabfrage über den Artikel verknüpfen. Also in diese Richtung:
Select y.Part_No_, (
-----
(
Select Stdev(F1)
FROM(
select sum(QTY) as F1
FROM 10a_Invoices where Part_No_=y.Part_No_ and year(Invdate)=2007 group by month(Invdate))
) as F2
----
From 10a_Invoices y group by Part_No_
(Kann sein dass ein paar Schönheitsfehler drin sind um die gehts mir aber grad nicht)
--> War glaub ich ne schöne Idee, geht aber in leider in dem Fall nicht. Die Unterabfrage wird eben nicht für alle y.Part_No_ der Reihe nach durchlaufen sondern fragt dann beim Ausführen nach einem Wert für y.Part_No_ da dies unbekannt ist (Access).
PS, allein die StDev für ein Teil zu bekommen hat mich min. 20Std gekostet... Bin stolz drauf, aber jetzt häng ich...
Hoffentlich ist Hilfe Unterwegs...
Nach 2 Wochen Trial und Error hab ich viel gelernt und auch einiges hinbekommen. Jetzt happerts aber...
>>>>Möchte Folgendes als Resultat - Zieltabelle<<<<
Artikel | Standardabweichung |
A | 90
B | 100
(Hier soll die Standardabweichung stehen, diese aber von Zahlen gruppiert auf Monatsebene sein)
Zur Erklärung
>>>>1) Ursprungstabelle<<<<
Habe eine Tabelle Rechnungen:
Artikel | Stk | Datum ...
A | 300 | 10.1.2009
A | 200 | 15.1.2009
A | 150 | 02.2.2009
A | 200 | 18.2.2009
A | 200 | 10.7.2009
B | 500 | 23.3.2009
B | 400| 14.4.2009
>>>>2) Guppiert auf Monatsebene<<<<
Artikel | Stk | Datum ...
A | 500| 1 (also Januar)
A | 350| 2 (also Februar)
A | 200| 7 (also July)
B | 500 | 3 (also März)
B | 400 | 4 (also April)
(später Frage ich noch eine zusätzliche Tabelle mit Monaten von 1-12 ab, damit alle Monate pro Teil gezeigt werden. Aber jetzt erst mal nur mit einer Tabelle)
>>>>3) Standardabweichung pro Artikel<<<<
also für A: Stdev (500,350,200) B:Stdev(500,400)
und dann eben die Tabelle wie Eingangs in Zieltabelle beschrieben.
Artikel | Standardabweichung |
A | 90
B | 100
(90 und 100 nur so hingeschrieben, nicht gerechnet)
(Irgendwann mal dann Stdev(500,350,0,0,0,0,200,0,0,0,0,0), 12 Monate eben. Aber wie gesagt, jetzt erst mal mit einer Tabelle.
>>>>Zu meiner Query<<<<<
(Sorry fuer die Englischen Bezeichnungen. QTY=Stück, 10a_Invoices = Tabelle Rechnungen, Part_No_=Artikel, Invdate=Datum der Rechnung)
>>>Stdev von einem Teil<<<<
Select Stdev(F1) as F2
FROM(
select sum(QTY) as F1
FROM 10a_Invoices where Part_No_='FD430163' and year(Invdate)=2007 group by month(Invdate))
--> Das geht und gibt mir die Standardabweichung, aber eben nur für einen Artikel.
>>>>Stdev aller Teile<<<<
Jetzt möcht ich aber natürlich, dass die Standardabweichung für alle Artikel gezeigt wird:
Meine Idee war noch ein Select vorne anschliessen auf Artikel gruppiert und die Unterabfrage über den Artikel verknüpfen. Also in diese Richtung:
Select y.Part_No_, (
-----
(
Select Stdev(F1)
FROM(
select sum(QTY) as F1
FROM 10a_Invoices where Part_No_=y.Part_No_ and year(Invdate)=2007 group by month(Invdate))
) as F2
----
From 10a_Invoices y group by Part_No_
(Kann sein dass ein paar Schönheitsfehler drin sind um die gehts mir aber grad nicht)
--> War glaub ich ne schöne Idee, geht aber in leider in dem Fall nicht. Die Unterabfrage wird eben nicht für alle y.Part_No_ der Reihe nach durchlaufen sondern fragt dann beim Ausführen nach einem Wert für y.Part_No_ da dies unbekannt ist (Access).
PS, allein die StDev für ein Teil zu bekommen hat mich min. 20Std gekostet... Bin stolz drauf, aber jetzt häng ich...
Hoffentlich ist Hilfe Unterwegs...
Kommentar