Ich verwende das folgende Skript, um die Bestellhistorie einer bestimmten Fertigungsreihenfolge zu erhalten;Oracle SQL, Berechnung der nächsten Bestellmenge basierend auf der Bestellhistorie
select ds.status, ds.catnr, ds.part_no, ds.print_type, ds.nr_discs, ds.qty, ds.ship_date
from
(select 'Open Order' status, gb.catnr, gb.part_no, decode(gb.tec_criteria,'XX','SCREEN','OF','OFFSET','PI','OFFSET','MC','OFFSET') print_type, sp.nrunits nr_discs, sum(gb.or_menge_fd) qty, min(trunc(gb.shd_date)) ship_date
from gps_beweg gb, oes_customer oc, scm_packtyp sp
where gb.part_no = 'A0101628358-VV92-1900'
and gb.uebergabe_oes = '1'
and gb.pwerk_disc = 'W'
and gb.cunr = oc.cunr
and gb.packtyp = sp.packtyp
group by gb.cunr, oc.name, gb.part_no, sp.nrunits, gb.tec_criteria, gb.catnr, gb.prodtyp, gb.packtyp
UNION ALL
select unique 'Shipped Order' status,
null catnr, null part_no, null print_type, null nr_discs,
(select sum(ds1.planqty) from oes_delsegview ds1 where ds.ordnr = ds1.ordnr and ds.catnr = ds1.catnr and ds.prodtyp = ds1.prodtyp and ds.packtyp = ds1.packtyp) qty,
(select trunc(max(ds1.gps_planshpdate)) from oes_delsegview ds1 where ds.ordnr = ds1.ordnr and ds.catnr = ds1.catnr and ds.prodtyp = ds1.prodtyp and ds.packtyp = ds1.packtyp) ship_date
from part_description pd1, oes_delsegview ds
where pd1.part_no =
(select max(gb.part_no)
from gps_beweg gb
where gb.part_no = 'A0101628358-VV92-1900'
and gb.uebergabe_oes = '1'
and gb.pwerk_disc = 'W')
and pd1.catnr = ds.catnr
and pd1.prodtyp = ds.prodtyp
and pd1.packtyp = ds.packtyp
and ds.ord_o_status in ('7','9')
order by status, ship_date desc) ds
where rownum <=5
Das Ergebnis für dieses Skript sieht wie folgt aus ...
Ich möchte die Daten in der Menge und SHIP_DATE Spalte verwenden, um die nächste Menge und Zeitpunkt vorherzusagen. Ich kann dies in Excel mit der TREND-Funktion tun. Gibt es eine Möglichkeit, dies in SQL zu tun? Wird es in Übereinstimmung mit der REGR_SLOPE-Funktion sein (ich kann nicht verstehen, wie das funktioniert!?!).
Soweit ich weiß, ist nichts in Oracles SQL eingebaut, um Ihnen hier zu helfen. Es existiert jedoch eine Prognoseberichtfunktion: https://docs.oracle.com/cd/B28359_01/olap.111/b28126/dml_commands_1052.htm#OLADM822. Ich habe das nie benutzt und würde nicht wissen, wie ich es aufrufen soll. Sie können dies möglicherweise irgendwie verwenden oder das außerhalb des DBMS mit Excel oder einem anderen Tool ausführen, das die Funktionalität bereitstellt. –
Danke für die Rückmeldung, ich werde die Prognosefunktion auschecken (Danke für den Link). Ich denke, ich muss möglicherweise wieder auf die Excel-Funktionen zurückgreifen. – SMORF