Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

benötige Hilfe bei Query

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von DerAmatuer, 2 Mai 2018.

  1. DerAmatuer

    DerAmatuer Benutzer

    Hallo an alle Profis,

    ich bräuchte eure Hilfe bei einer Abfrage. Ich habe schon etliche Dinge versucht, bekomme es jedoch nicht hin.
    Folgende Aufgabenstellung:
    Ich habe zwei Tabellen, eine beinhaltet eine Liste mit Namen von Fussballmannschaften, die andere die entsprechenden Paarungen an den Spieltagen. Die Paarungen stehen jeweils mit dem Index der Mannschaften in der Tabelle (also z.B. 1 gegen 2 / 3 gegen 4 usw.).
    Jetzt suche ich eine Abfrage welche mir die Spieltage entsprechend auflistet, jedoch mit den zugehörigen Mannschaftsnamen.
    Ich steh da irgendwie auf dem Schlauch und hoffe Ihr könnt mir helfen.

    Danke und Gruß
     

    Anhänge:

  2. akretschmer

    akretschmer Datenbank-Guru

    doppelt joinen:

    Code:
    test=*# create table teams(id int primary key, name text);
    CREATE TABLE
    test=*# insert into teams values (1, 'Team 1');
    INSERT 0 1
    test=*# insert into teams values (2, 'Team 2');
    INSERT 0 1
    test=*# create table spiel (t1 int references teams, t2 int references teams);
    CREATE TABLE
    test=*# insert into spiel values(1,2);
    INSERT 0 1
    test=*# select t1.name, t2.name from spiel s left join teams t1 on s.t1=t1.id left join teams t2 on s.t2=t2.id;
      name  |  name  
    --------+--------
     Team 1 | Team 2
    (1 Zeile)
    
    test=*#
    
     
  3. DerAmatuer

    DerAmatuer Benutzer

    Hallo akretschmer,

    hat funktioniert, Spitze! Auch wenn ich es noch nicht so recht verstehe , aber ich schau mir das nochmal im Detail an.

    Vielen Dank für deine sehr schnelle Antwort!

    Grüße und schönen Abend
     
  4. akretschmer

    akretschmer Datenbank-Guru

    eigentlich ganz simpel. die Tabelle wird halt 2 mal gejoint, je einmal für jede Mannschaft. Um die gejointen Tabellen unterscheiden zu können, werden unterschiedliche Aliase verwendet. In der Join-Condition wird festgelegt, auf welches konkrete Feld sich der Join bezieht.
     
  5. DerAmatuer

    DerAmatuer Benutzer

    Na da brauch ich wohl noch eine Weile bis ich auch ein Datenbank-Guru bin ;)
    Danke nochmals!
     
    akretschmer gefällt das.
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden