hansix1985x: Vergleichen 2er tabellen

Hallo,

Ich habe ein Problem. Ich möchte eine Auswertung über eine Fussballdatenbank machen. Habe mir eine Tabelle wo Platz,Team,Siege,X,Niederlage und das ganze auch noch erweitert mit heimbilanz und auswärtsbilanz. Meine 2 Tabelle beinhaltet einen Spielplan Spieltag,Kalenderwoche,Datum,Heimtwam,Gastteam.

Ich möchte jetzt den jeweiligen Spieltag vergleichen,dazu wähle ich einen Spieltag oder Kalenderwoche, wie genau ich es mache weiß ich noch nicht.

Ich möchte jetzt die Heimsieg des Heimteams auslesen und die Auswärtssiege der Gäste und genau da komm ich nicht weiter.

hier der Code

  
"SELECT  
    t1.*,  
    t2.*	  
FROM  
   spa_ita AS t1  
LEFT JOIN italien_h_a AS t2 ON t2.team = t1.heim"

Wenn ich es auslese bekomme ich nur die Siege und Niederlagen der heimmannschaft. Wenn ich t1.gast bei der ON-Bedingung gebe bekomme ich nur die der Gastmannschaft.

Kann mir jemand helfen,damit ich beide ausgelesen bekomme.

Vielleicht geht es auch irgendwie anderst besser, nehme jeden tipp dankend an.

Vielen Dank

Hansix1985x

  1. Mahlzeit hansix1985x,

    Ich habe ein Problem. Ich möchte eine Auswertung über eine Fussballdatenbank machen. Habe mir eine Tabelle wo Platz,Team,Siege,X,Niederlage und das ganze auch noch erweitert mit heimbilanz und auswärtsbilanz. Meine 2 Tabelle beinhaltet einen Spielplan Spieltag,Kalenderwoche,Datum,Heimtwam,Gastteam.

    Könntest Du das bitte etwas genauer darstellen? Entweder indem Du z.B. die CREATE-Statements der Tabellen zeigst oder indem Du das einfach "aufmalst":

    Platz | Team | Siege | X | Niederlage | heimbilanz | auswärtsbilanz
    ------+------+-------+---+------------+------------+---------------
    1     | foo  | 2     | Y | 0          | bla        | blubb
    2     | bar  | 8     | Z | 3          | dingens    | kirchen
    ...

    Ansonsten ist es nämlich nahezu unmöglich, Dir zu empfehlen, wie Du Deine Abfragen in SQL stricken kannst.

    FROM
       spa_ita AS t1
    LEFT JOIN italien_h_a AS t2 ON t2.team = t1.heim"[/code]

    Tabellen mit den Namen "spa_ita" und "italien_h_a"? Du hast nicht wirklich für *jede* Mannschaft und *jede* Paarung jeweils eine eigene Tabelle?

    Wenn doch: Du solltest Dir DRINGENDST!!!111einsELFELF Gedanken über eine vernünftige Normalisierung Deiner Daten machen ...

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. platz|team|spiele|gew|un|verl|t|gt|sp_h|gew_h|un_h|verl_h|t_h|gt_h|sp_a|gew_a|un_a|ver_a|t_a|gt_a|tor_dif|punkte

      Dies ist die Tabelle von italien_h_a

        
       spieltag | kw | datum | heim  | gast  
      ----------+----+-------+-------+----  
      20        |3   |15.1   |Napoli | Milan
      

      Das ist die Spielplan-Tabelle

      Ich habe die aktuelle Tabelle in einer Tabelle und den Spielplan mit allen Spieltagen in einer Tabelle.

      Ich möchte jetzt über den Spielplan die Mannschaften vergleichen.

      20.Spieltag|15.1|Napoli|Milan| Heimsieg

      Ich vergleiche dann die Heimsiege von Napoli mit den Auswärtssiegen und Auswärtsniederlagen von Milan und da soll dann die ausgabe kommen ob heimsieg oder auswärtssieg oder gar nichts.

      Hoffe ich konnte es näher bringen.

      Mit union all habe gerade geschaut bekomme ich
      The used SELECT statements have a different number of columns
      als fehlermeldung

      1. moin,

        Ich habe die aktuelle Tabelle in einer Tabelle und den Spielplan mit allen Spieltagen in einer Tabelle.

        wie gesagt, du benutzt sehr viele prozessdaten, die meiner meinung nach nicht notwendig sind. zum beispiel kann man die ganze liga-tabelle mit einer Abfrage/View lösen, ohne dassman sie in eine extra datenbank tabelle speichern muss.

        Mit union all habe gerade geschaut bekomme ich
        The used SELECT statements have a different number of columns
        als fehlermeldung

        und was sagt dir diese fehlmeldung ? dass die beiden abfragen, die du mit UNION ALL verbindest eine unterschiedliche Anzahl an Spalten haben. Dann ändere das doch....

        Ilja

  2. moin, moin, endlich mal wieder fußball ;-)

    Habe mir eine Tabelle wo Platz,Team,Siege,X,Niederlage und das ganze auch noch erweitert mit heimbilanz und auswärtsbilanz. Meine 2 Tabelle beinhaltet einen Spielplan Spieltag,Kalenderwoche,Datum,Heimtwam,Gastteam.

    das erste problem ist wohlmöglich, dass du viele daten mit in der tabelle speicherst, die sich aus den anderen werten berechnen lassen. im grunde genommen brauchst du nur (vereinfachte darstellung) die mannschaften und die spielergebnisse, der rest läßt sich berechnen.

    Kann mir jemand helfen,damit ich beide ausgelesen bekomme.

    aber mal von der oben angesprochen problematik abgesehen, korrelierte unterabfragen oder UNION ALL sind zwei stichwörter für dich, die dir weiter helfen. willst du konkrterere hilfe, dann gebe uns beispieldatensätze und das gewünschte ergebnis, das du bekommen willst

    Ilja