Hallo,
es geht um ein Druckportal
es gibt ein Produkt, was mehrere Eigenschaften hat, z.B. Auflage, Farbanzahl, Größe, etc.
Jede dieser Option kann unterschiedliche Lieferzeiten haben, z.B. Option 1000 Stück normal, Express und Overnight, die Option 10000 Stück dagegen nur normal und Express, 100000 Stück dagegen z.B. nur normal, da 100000 Stück est einmal gedruckt werden müssen ;-)
+--------------+ +--------------+ +-----------------------+ +--------------------------+ +----------------+
| t_produkt | | t_Option1 | | t_produkt_has_option1 | | t_option1_has_lieferzeit | | t_lieferzeit |
+--------------+ +--------------+ +-----------------------+ +--------------------------+ +----------------+
| _produkt_id | | _option1_id | | _produkt_id | | _option_id | | _lieferzeit_id |
+--------------+ +--------------+ +-----------------------+ +--------------------------+ +----------------+
| _bezeichnung | | _bezeichnung | | _option1_id | | _lieferzeit_id | | _bezeichnung |
+--------------+ +--------------+ +-----------------------+ +--------------------------+ +----------------+
| _variable1 | | _variable1 | | _standard | | _faktor |
+--------------+ +--------------+ +-----------------------+ +----------------+
| _variable2 | | _variable2 |
+--------------+ +--------------+
| _variablen | | _variablen |
+--------------+ +--------------+
t_Option1 steht für eine Option, die Optionen haben eine unterschiedliche Anzahl von Variablen.
_standard wird benötigt, damit wenn die Seite zum ersten mal geladen wird, der Preis mit den Standardoptionen angezeigt werden kann
der Preis von ein Produkt wird ermittelt anhand von den ganzen Variablen (da steckt eine etwas längere Formel hinter)
herauszufinden, welches Produkt alle Optionen hat, ist kein Problem
mein Problem ist, dass ein Produkt z.B. 4 von 5 Optionen mit folgenden Lieferzeiten haben kann "normal" und "Express", das 5 jedoch entweder keine Lieferzeit, oder z.B. warum auch immer Overnight
bei meiner Berechnung erhalte ich, wenn z.B. alle Optionen als Lieferzeit "normal" und "Express" haben, beide Endpreise, bei Express steht dann noch, um wieviel es teurer gegenüber dem ersten ist
ich möchte verhindern, dass der Kunde ein Produkt zur Auswahl erhält, was sich auf Grund der Optionen nicht bestellen lässt, da z.B. nicht alle die selben Lieferzeiten haben
wenn ich den Preis berechnen lasse, geht die Abfrage über all diese Tabellen, somit habe ich eien Beziehung zwischen t_option1_has_lieferzeit und t_produkt_has_option1, wenn ich allerdings herausfinden möchte, welches Produkt Optionen hat und gleichzeitig müssen diese Optionen mindestens einmal alle die gleiche Lieferzeit haben
da scheiter ich im Moment dran :-(
falls man das nur mit MySQL 5 lösen kann, stellt sich mir die Frage, ob man MySQL 5 ohne Probleme parallel zu MySQL 4.1 installieren kann?
mfg
Twilo
Farbtabelle