Hallo Leute,
ich komme mit einer Datenbank abfrage nicht weiter,
die Funktioniert schon nur erhalte ich die nicht in richtiger Form ausgegeben.
Also ich hab 3 Tabellen die Haupttabelle ist Produkt, wen ich ein Produkt hinzufüge und eine/mehrere/keine Kategorie auswähle,
wird in der Tabelle kategorie_zuordnung dann ein eintrag gemacht wenn eine Kategorie ausgewählt wurde.
Das geht alles soweit gut, jetzt will ich nach einer bestimmten Kategorie Sortieren und die Restlichen am Ende mit anzeigen.
Nur die Treffer auszugeben, ist ja kein Problem nur die anderen dazu mit auszugeben klappt bei mir nicht so richtig und die ausgabe Soollte auf Seiten aufgeteilt werden mit LIMIT.
Daher kann ich da schlecht getrennte abfragen nutzen und die dann zusammen verbinden.
So erhalte ich ja nur alle Treffet:
Und so erhalte ich es schon mal fast richtig, die meisten Treffer werden am anfang ausgegeben aber einige auch dazwischen.
So ist die Datenbank aufgebaut:
Bildschirmfoto 2018-07-05 um 12.15.54.png
Das Problem liegt dadrin das einige Produkte in zwei oder auch mehr Kategorien zugewiesen sind und die dadurch an verschiedenen Positionen ausgegeben werden.
Kann mir da einer weiter helfen wie ich das machen kann?
ich komme mit einer Datenbank abfrage nicht weiter,
die Funktioniert schon nur erhalte ich die nicht in richtiger Form ausgegeben.
Also ich hab 3 Tabellen die Haupttabelle ist Produkt, wen ich ein Produkt hinzufüge und eine/mehrere/keine Kategorie auswähle,
wird in der Tabelle kategorie_zuordnung dann ein eintrag gemacht wenn eine Kategorie ausgewählt wurde.
Das geht alles soweit gut, jetzt will ich nach einer bestimmten Kategorie Sortieren und die Restlichen am Ende mit anzeigen.
Nur die Treffer auszugeben, ist ja kein Problem nur die anderen dazu mit auszugeben klappt bei mir nicht so richtig und die ausgabe Soollte auf Seiten aufgeteilt werden mit LIMIT.
Daher kann ich da schlecht getrennte abfragen nutzen und die dann zusammen verbinden.
So erhalte ich ja nur alle Treffet:
Code:
"SELECT A.* FROM produkt AS A LEFT JOIN kategorie_zuordnung AS B ON (A.id = B.pr_id) LEFT JOIN kategorie AS C ON (B.kategorie = C.id) WHERE C.kategorie = 'Kneifzange'"
Code:
"SELECT A.* FROM produkt AS A LEFT JOIN kategorie_zuordnung AS B ON (A.id = B.pr_id) LEFT JOIN kategorie AS C ON (B.kategorie = C.id) WHERE ORDER BY C.kategorie = 'Kneifzange' ASC"
Bildschirmfoto 2018-07-05 um 12.15.54.png
Das Problem liegt dadrin das einige Produkte in zwei oder auch mehr Kategorien zugewiesen sind und die dadurch an verschiedenen Positionen ausgegeben werden.
Kann mir da einer weiter helfen wie ich das machen kann?
Kommentar