tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
8
ZUGRIFFE
1030
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    notebook20000 notebook20000 ist offline Mitglied Brokat
    Registriert seit
    Nov 2004
    Beiträge
    261
    Wenn ich mit

    $query = " SELECT
    t1.*,
    t2.PARENTID,
    t2.name
    FROM
    03_struktur_to_user AS t1
    LEFT OUTER JOIN
    00_struktur AS t2 ON t1.SID = t2.SID
    GROUP BY
    t2.SID
    ORDER BY
    t2.name
    ";

    Daten abfrage, bekomme ich alle Einträge die eine Zuordnung in der zweiten tabelle haben. Wie bekomme ich genau die anderen? Also di, die keinen Eintrag in der zweiten tabelle haben?
     

  2. #2
    lmarkus31 lmarkus31 ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    318
    Hallo,

    mit dem Gegenstück zum LEFT OUTER JOIN, dem RIGHT OUTER JOIN.

    Zusammen kannst du sie dir mittels FULL OUTER JOIN ausgeben lassen.

    Markus
     

  3. #3
    notebook20000 notebook20000 ist offline Mitglied Brokat
    Registriert seit
    Nov 2004
    Beiträge
    261
    Das "FULL OUTER JOIN" wirdt bei mri einen Fehler. Wie kann ich das anders realisieren oder wo könnte der Fehler liegen? Ist das nru ab bestimmten mySQL VErsionen möglich?
     

  4. #4
    lmarkus31 lmarkus31 ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    318
    Hallo,

    mhm welche Version von MySQL benutzt Du?

    Ansonsten ginge auch ein LEFT OUTER JOIN über ein UNION ALL verknüpft mit einem RIGHT OUTER JOIN.

    Markus
     

  5. #5
    notebook20000 notebook20000 ist offline Mitglied Brokat
    Registriert seit
    Nov 2004
    Beiträge
    261
    Hallo,

    5.0.22

    Wie genau geht das in der alternativen? Beispiel?


    Hie rmeine aktuelle Abfrage in der FULL JOIN Version

    $query = " SELECT
    t1.SID,
    t1.PARENTID,
    t1.name,
    t2.*
    FROM
    00_struktur AS t1
    FULL OUTER JOIN
    03_struktur_to_user AS t2 ON t1.SID = t2.SID
    WHERE
    t1.status = 'aktiv'
    GROUP BY
    t1.SID
    ORDER BY
    t1.name
    ";


    Das ist der Fehler:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FULL OUTER JOIN 03_struktur_to_user AS t2 ON t1.SID = t2.SID WH' at line 8
    Geändert von notebook20000 (21.06.07 um 10:41 Uhr)
     

  6. #6
    lmarkus31 lmarkus31 ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    318
    Hallo,

    z.B. so:

    Code sql:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    SELECT t1.id, t1.name, t2.id, t2.name
      FROM tabelle t1
      LEFT OUTER JOIN tabelle2 t2 ON (t1.id = t2.id)
      .....
    UNION
    SELECT t1.id ,t1.name, t2.id,t2.name
      FROM tabelle t1
     RIGHT OUTER JOIN tabelle2 t2 ON (t1.id = t2.id)
       ....

    Markus
     

  7. #7
    notebook20000 notebook20000 ist offline Mitglied Brokat
    Registriert seit
    Nov 2004
    Beiträge
    261
    Hallo,

    nochmal zur Sicherheit

    Ich möchte alle Datensätze aus der Strukturtabelle haben und wnen es in der Zusatztabelle zufällig auch Daten gibt, sollten diese Angefügt werden aber es sollte kein Ausschlusskriterium sein, wenn diese Daten nichtd a sind
    Geändert von notebook20000 (21.06.07 um 11:25 Uhr)
     

  8. #8
    notebook20000 notebook20000 ist offline Mitglied Brokat
    Registriert seit
    Nov 2004
    Beiträge
    261
    Hallo,

    und wie bekomme ich da ein ORDER BY rein?

    Bei mir mault er immer rum das, das Feld nicht vorhanden ist. Wenn ich das Feld direkt angebe ohne tabellenreferenz, sagt er mir das Feld ist ambigious?!
     

  9. #9
    lmarkus31 lmarkus31 ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Beiträge
    318
    Hallo,

    Ich habs mal hier beantwortet:

    http://www.tutorials.de/forum/1440831-post2.html

    Markus
     

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 25.10.10, 00:14
  2. Antworten: 5
    Letzter Beitrag: 08.09.10, 09:42
  3. MySQL - Kunden aus Tabelle die keinen Eintrag in Tabelle Bank haben
    Von Hubivan im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 09.07.07, 12:25
  4. Bild soll keinen Kasten haben...
    Von Apollon05 im Forum Sonstige Grafik-Programme
    Antworten: 6
    Letzter Beitrag: 03.04.07, 21:57
  5. Antworten: 8
    Letzter Beitrag: 09.02.05, 17:18