Stephanie: JOIN-Verständnisproblem bei Abfrage über 2 Tabellen (mysql)

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

  1. 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

    1. Hallo Tunnel85!!!

      Vielen, vielen Dank ! Damit hat es funktioniert !

      Viele Grüsse und nochmals danke !