Hallöchen!
Ich muß Sven Recht geben! Das ist nicht ganz so einfach abfragbar! Nur Svens erste Version wäre da einfach möglich. Bie Scobs Ansatz sehe ich zwar nicht, warum man überhaupt eine neue Tabelle brauchen soll, denn die Verknüpfung von Kundennummer und Artikelnummer steht auch in der Bestellungen-Tabelle.
Aber das Problem ist und bleuibt: Du mußt zuerst alle Kunden Filtern, die dieses Artikels X bereits gekauft haben, und dann weiß ich auch nichtz so recht was man am besten macht. Ich würde es probieren, die ganzen Kundennummern in die Where-Bedingung zu schreiben, dann könnte man nämlich direkt in der Abfrage die Zahlen der Artikel Y ermitteln. Sonst braucht man ne Schleife, udn muß mit Variablen mitzählen.
Die sauberste Lösung wäre wohl ein Subselect, aber das kann ich nicht, und MySQL (noch) ebensoweinig. Naja, egal was man macht, wenn das viele Kunden sind, wird das ganze recht lahm, befürchte ich!
Ein ganz anderer Ansatz, wäre wenn man zu Svens alter Version zurückkommt, und immer Nachts per Cronjob nicht immer nur die Daten der aktuellen Bestellung eingibt, sondern das so mit allen bisherigen Bestellungen macht. Nur leider potenziert sich das, und gerade in einem Büchershop wie amazon bräuchte so ein Script bestimmt Stunden oder Tage zum durchlaufen! Aber auch der andere Ansatz müte bei vielen Bestellungen pro Person sehr langsam werden.
Ich denke, die sind doch noch etwas schlauer als wir, bzw. als ich, und machen das irgendwie besser!
Viele Grüße
Andreas