Hallo,
ich hab hier vermutlich ein völlig simples Problem mit meiner MySQL DB aber ich steh grad auf dem Schlauch und komme einfach nicht drauf. Ich wusste auch nicht genau wonach ich suchen sollte also frag ich einfach mal drauf los.
Ich habe drei Tabellen
dokument
dokument_kategorien
Datensätze:
Dokument1 in Kategorie 1 und 2
Dokument2 in Kategorie 1 und 2
Jetzt suche ich alle Dokument, die in zwei bestimmten Kategorien sind
oder in einer der beiden Kategorien
Die erste Abfrage gibt mir ein leeres Ergebnis zurück, die Zweite gibt mir zwar zwei Ergebnisse aus, die aber beide den Namen Dokument1 haben.
Könnte mir das jemend auf die Sprünge helfen? SQL ist ein wenig eingerostet bei mir.
ich hab hier vermutlich ein völlig simples Problem mit meiner MySQL DB aber ich steh grad auf dem Schlauch und komme einfach nicht drauf. Ich wusste auch nicht genau wonach ich suchen sollte also frag ich einfach mal drauf los.
Ich habe drei Tabellen
dokument
- PK dokument_ID
- dokument_name
- PK kategorie_ID
- kategorie_name
dokument_kategorien
- dokument_ID
- kategorie_ID
Datensätze:
Dokument1 in Kategorie 1 und 2
Dokument2 in Kategorie 1 und 2
Jetzt suche ich alle Dokument, die in zwei bestimmten Kategorien sind
Code:
SELECT DISTINCT * FROM dokument d , dokument_kategorien dk WHERE d.dokument_id=dk_dokument_id AND dk_kategorie_ID='1' AND dk.kategorie='2' ORDER BY d.dokument_name
oder in einer der beiden Kategorien
Code:
SELECT DISTINCT * FROM dokument d , dokument_kategorien dk WHERE d.dokument_id=dk_dokument_id AND dk_kategorie_ID='1' OR dk.kategorie='2' ORDER BY d.dokument_name
Die erste Abfrage gibt mir ein leeres Ergebnis zurück, die Zweite gibt mir zwar zwei Ergebnisse aus, die aber beide den Namen Dokument1 haben.
Könnte mir das jemend auf die Sprünge helfen? SQL ist ein wenig eingerostet bei mir.
Zuletzt bearbeitet: