Liebes Forum,
nach der genialen Hilfe lege ich gleich noch ein zweites Problem nach:
Ich habe eine Tabelle die folgendermaßen aussieht:
Kunden_ID: Produkt_ID:
Müller Prod1
Bauer Prod2
Huber Prod5
Müller Prod5
Bauer Prod2
Huber Prod1
Das heißt, sowohl die Kunden als auch die Artikel können öfters vorkommen, je nachdem wie oft jemand was bestellt! Nun möchte ich gerne Kunden, die zB Prod1 kaufen, ein anderes Produkt empfehlen das andere Kunden, die auch Prod1 kaufen, gekauft haben!
Um zu wissen welches Produkt ich empfehle, hätte ich gerne eine Tabelle die so aussieht:
Produkt: Alternativprodukt mit den meisten Kunden:
Prod1 Prod5
Prod2 -----
Prod5 Prod1
Bisher ist mir nur eingefallen erst einmal alle Artikel zu suchen bei denen es kein Alternativprodukt gibt (über alle Kunden, die nur 1 bestimmtes Produkt kaufen und kein anderes):
select count(distinct(Produkt_ID)) as anz_prod, Kunden_ID
from tabelle1
group by kunden_nr;
Aber bei allen anderen - wie gehe ich da am besten vor? Ich dachte eventuell mit einem ranking, aber wie frage ich das am besten ab?
Hoffe auf einen Geistesblitz!!
Lg Nuggme
nach der genialen Hilfe lege ich gleich noch ein zweites Problem nach:
Ich habe eine Tabelle die folgendermaßen aussieht:
Kunden_ID: Produkt_ID:
Müller Prod1
Bauer Prod2
Huber Prod5
Müller Prod5
Bauer Prod2
Huber Prod1
Das heißt, sowohl die Kunden als auch die Artikel können öfters vorkommen, je nachdem wie oft jemand was bestellt! Nun möchte ich gerne Kunden, die zB Prod1 kaufen, ein anderes Produkt empfehlen das andere Kunden, die auch Prod1 kaufen, gekauft haben!
Um zu wissen welches Produkt ich empfehle, hätte ich gerne eine Tabelle die so aussieht:
Produkt: Alternativprodukt mit den meisten Kunden:
Prod1 Prod5
Prod2 -----
Prod5 Prod1
Bisher ist mir nur eingefallen erst einmal alle Artikel zu suchen bei denen es kein Alternativprodukt gibt (über alle Kunden, die nur 1 bestimmtes Produkt kaufen und kein anderes):
select count(distinct(Produkt_ID)) as anz_prod, Kunden_ID
from tabelle1
group by kunden_nr;
Aber bei allen anderen - wie gehe ich da am besten vor? Ich dachte eventuell mit einem ranking, aber wie frage ich das am besten ab?
Hoffe auf einen Geistesblitz!!
Lg Nuggme