Announcement

Collapse
No announcement yet.

Select Aufruf mehrere Tabellen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Select Aufruf mehrere Tabellen

    Morgen und Hallo Forum,

    habe letzte woche zwar für einige Aufrufe gute Tipps hier gefunden, doch nun stehe ich aufm Schlauch bei einer einfachen Abfrage.

    Ich habe 2 Tabellen die ich zusammen öffnen will (ich hatte nun an einen Join gedacht).

    Wie folgt sieht es aus:

    Tabelle1 Spiele:

    Nummer | Tag | Ort

    Tabelle2 Spielerpunkte

    Spielnummer | Spieler | Tore


    Nun kann es aber sein das ein Spieler bei einem von 3 Spielen kein Tor geschossen hat und hierfür ist dann KEIN Datensatz in Tabelle2 vorhanden. ich will aber für jedes Spiel einen Datensatz haben.

    Da gabs doch nen Aufruf beim Verknüpfen von Tabellen wenn die 2. keinen Datensatz liefert das dennoch einer erstellt wird oder lieg ich hier falsch.

    Schon ein mal ein Danke für die Hilfe

  • #2
    Hallo,

    mglws. meinst du ja einen OUTER JOIN.
    [highlight=sql]
    select *
    from Tabelle1
    left join Tabelle2 on Spielnummer = Nummer
    [/highlight]

    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Morgen,

      leider nein, wobei ich aber dazu sagen muss das ich noch eine WHERE Abfrage dazu nehme


      Und zwar sieht es so aus (zzt. erfolglos):

      Code:
      SELECT * FROM Spiele LEFT JOIN Spielerpunkte ON
       Spielerpunkte.Spielnummer = Spiele.Nummer WHERE Spielewertung=1 AND 
      Spieler='xyz' ORDER BY Nummer
      Leider bekomme ich nur Datensätze wo beim Spieler auch jeweils ein Datensatz in der Tabelle Spielerpunkte vorhanden ist.

      Tabelle1
      1 - 11.09.2009 - Testspiel1
      2 - 15.09.2009 - Testspiel2
      3 - 17.09.2009 - Testspiel3

      Tabelle2

      1 - xyz - 7
      3 - xyz - 7

      Bisher gibt er mir 2 Datensätze zurück da keine DS bei Tabelle2 für ID 3 vorhanden ist. Ich will aber das ich dann einen DS bekomme der dann bei Tore 0 drinn hat für Spiel 2.

      Comment


      • #4
        Originally posted by AufmSchlauch View Post
        ...leider nein, wobei ich aber dazu sagen muss das ich noch eine WHERE Abfrage dazu nehme
        Und genau diese WHERE-Bedingung zerstört dir den OUTER JOIN! Diese zusätzliche Bedingung gehört dann in die Definition des JOIN und nicht in die Where-Klausel.
        [highlight=sql]
        SELECT *
        FROM Spiele
        LEFT JOIN Spielerpunkte ON
        Spielerpunkte.Spielnummer = Spiele.Nummer
        AND Spieler='xyz'
        ORDER BY Nummer
        [/highlight]

        Gruß Falk
        Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

        Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

        Comment


        • #5
          Danke Falk,

          hat super geklappt.... manchmal sieht man den Wald nicht mehr.

          schönen Tag noch

          Comment

          Working...
          X