JOIN-Verständnisproblem bei Abfrage über 2 Tabellen (mysql)
Stephanie
- datenbank
Hallo liebe Community,
leider stehe ich vor dem Problem, eine SELECT-Query über 2 Tabellen durchführen zu müssen, komme aber, um ganz ehrlich zu sein, trotz der zahlreichen Tuts nicht wirklich zum Ziel.
Ich habe in der DB u.a. 2 Tabellen, db_bilder und db_rating. Als Bezugspunkte dienen mir hierbei immer die in beiden Tabellen vorhandenen Spalte "id".
In der Tabelle db_bilder habe ich neben anderen Informationen die Spalten "kat" und "fsk18", in der Tabelle db_rating die Spalte "total_value".
Nun benötige ich eine Select-Query die faktisch 10 IDs aus der db_rating (oder auch aus der db_bilder) liefert die höchsten Werte in der Spalte "total_value" [db_rating] hat UND (!) die in der db_bilder in den Spalten "kat" und "fsk18" vorher definierte Bedingungen erfüllt.
Meine Versuche scheiterten leider alle, mein letzter Versuch war "SELECT db_bilder.id FROM db_bilder WHERE db_bilder.kat = $suquery $sdfilterque ORDER BY db_ratings.total_value DESC LIMIT 10" [$suquery und $sdfilterque sind jeweils vorher definiert].
Ich hoffe:
a) das mich überhaupt jemand versteht was ich will :-)
b) das hier jemand genädig ist und mir hilft...
Viele Grüße
Stephanie
Hi,
wenn ich dich richtig verstehe hast Du in der Tabelle db_rating die id des jeweiligen dazugehörigen bildes gespeichert?
Dann wäre es das hier:
SELECT
db_bilder.id,db_bilder.kat,db_rating.bilder_id,db_ratings.total_value
FROM
db_bilder
JOIN
db_rating ON db_rating.bilder_id=db_bilder.id
WHERE
db_bilder.kat = '$deine variable'
ORDER BY
db_ratings.total_value DESC
LIMIT 10
Hier nochmal ein Tutorial dazu Designnation
Gruß
Tunnel85
Hallo Tunnel85!!!
Vielen, vielen Dank ! Damit hat es funktioniert !
Viele Grüsse und nochmals danke !