Join-Frage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Join-Frage

    Ich weiß, ich weiß - ich werde jetzt gekreuzigt, weil ich ne Frage zu Joins stelle. Ich hab auch gesucht und gelesen, aber irgendwie wills nich in meinen Kopf - vielleicht ist jemand so nett und erklärt mir, wie ich folgendes anstelle:

    Tab1
    ----------------------------------------------------
    | ID | player_id | unit_1 | unit_2 | unit_3
    ----------------------------------------------------
    | 1 | 1 | 23 | 23 | 18 |
    | 2 | 2 | 24 | 21 | 16 |
    | 3 | 1 | 21 | 26 | 11 |
    ....

    Tab2
    ----------------------------------------------------
    | ID | usr_name | usr_lvl
    ----------------------------------------------------
    | 1 | gonzo | 3
    | 2 | piggy | 4
    | 3 | kermit | 3
    ....

    Ich möchte alle unit_1 auslesen, bei denen in Tab2 der usr_lvl gleich 3 ist.

    tab1.player_id = tab2.id

    SELECT t1.unit_1 FROM tab1 t1, tab2 t2 .... hmmm?

    danke

  • #2
    Say what you want!

    SELECT t1.unit_1 FROM tab1 t1, tab2 t2 WHERE t1player_id = t2.id AND t2.usr_lvl = 3

    Kommentar


    • #3
      hmm, irgendwo ist da noch nen Denkfehler:

      Tab1
      ----------------------------------------------------
      | ID | player_id | unit_1 | unit_2 | unit_3
      ----------------------------------------------------
      | 1 | 1 | 23 | 23 | 18 |
      | 2 | 2 | 24 | 21 | 16 |
      | 3 | 1 | 21 | 26 | 11 |
      ....

      Tab2
      ----------------------------------------------------
      | ID | usr_name | usr_lvl
      ----------------------------------------------------
      | 1 | gonzo | 3
      | 2 | piggy | 4
      | 3 | kermit | 3
      ....

      Es werden trotzdem Datensätze von Usern ausgegeben, die keinen Userlevel = 3 haben.

      Meine endgültige Abfrage:
      $top_query = "SELECT t1.unit FROM stat_planets t1, stat_usrs t2 ";
      $top_query .= "WHERE t2.usr_lvl = 3 AND t2.id = t1.player_id GROUP BY t1.unit ORDER BY t1.unit DESC";

      Kommentar

      Lädt...
      X