ich stell mich an wie ein brot!

wolldecke

Grünschnabel
hier mein select :

$top1=sqlquery("select Spare_Part,Unit_Price,art_rabatt,art_stat, SUM((menge*Unit_Price)*((100-art_rabatt)/100)) as summe FROM archiv_art_best where art_stat > 0 GROUP BY Spare_Part ORDER BY summe DESC");



soweit so gut, dieser funktioniert.



grundsätzliches:

die tabelle die ich abfrage ist ein archiv. in dieser tabelle sind alle artikel mit nummer (Spare_Part), preis (Unit_Price), artikel rabatt (art_rabatt) und die menge aufgelistet.
eine andere tabelle (best_archiv) beinhaltet alle bestellungen . dort werden die kunden mit ihren einzelnen rabatten geführt. beide tabellen verbinde ich via id (best_id).



mein problem.

im select oben, brauche ich den wert des kundenrabatt aus (best_archiv) immer entsprechend der (best_id) um so den tatsächlichen umsatz errechnen zu können.

vielen dank im voraus wolldecke.
 
hallo,

ich würde dir ja gerne helfen, dafür müsstest du aber mal noch folgende fragenbeantworten.

1. du hast 2 Tabellen, richtig? (1. archiv_art_best,2. best_archiv)
2. die Spalten lauten wie folgt (zu 1. Spare_Part(Art.-Nr.),Unit_Price(Preis),art_rabatt(Rabatt FÜR DEN ARTIKEL ODER DEN KUNDEN),art_stat(?),Summe), zu 2. (Best_ID, Kunden, Kundenrabatt, wenn ja, was soll die Spalte art_rabatt in 1.).


msecret
 
hallo,

zu 1. korrekt
zu 2.

1.
Spare_Part (Art_Nr)
Unit_Price (Preis)
art_rabatt (Rabatt für den Artikel, einige Artikel haben einen temporären rabatt )
art_stat
(ist eine statusspalte die für die einzelnen (mehrzahl von status :) ) zwischen bestellung, am lager, nicht am lager, order, wareneingang, rückstand, etc. und auch gelöscht => art_stat=0)

2.
best_id (Bestellnummer)
nr_ku (Kundennummer)
rabatt (Rabatt des Kunden, einige Kunden haben unterschiedliche Rabatte)

danke für dein interesse wolldecke
 
sicherllich nicht elegant aber es funktioniert.

$top4=sqlquery("TRUNCATE table tmp");
$top3=sqlquery("create table tmp (Spare_Part varchar(100) not null,Unit_Price decimal(10,2),art_rabatt decimal(4,2),best_id bigint(20),menge int (5),art_stat tinyint(4),rabatt decimal(4,2))");
$top2=sqlquery("insert into tmp (Spare_Part,Unit_Price,art_rabatt,best_id,menge,art_stat,rabatt) select archiv_art_best.Spare_Part,archiv_art_best.Unit_Price,archiv_art_best.art_rabatt,archiv_art_best.best_id,archiv_art_best.menge,archiv_art_best.art_stat,best_archiv.rabatt from archiv_art_best left join best_archiv on archiv_art_best.best_id=best_archiv.best_id");
$top1=sqlquery("select Spare_Part,Unit_Price,art_rabatt,art_stat,rabatt, SUM( (menge*Unit_Price)*((100-art_rabatt)/100)*((100-rabatt)/100) ) as summe FROM tmp where art_stat > 0 GROUP BY Spare_Part ORDER BY summe DESC");

danke für das interesse wolldecke
 
Zurück