SQL Statement

Dieses Thema im Forum "SQL und Datenbanken" wurde erstellt von keanuf, 31.10.2005.

  1. keanuf

    keanuf Jungspund

    Dabei seit:
    31.10.2005
    Beiträge:
    16
    Zustimmungen:
    0
    Guten Tag liebe Online Gemeinde,
    ich tu mich gerade mit einem SQL Statement verdammt schwer.

    Beschreibung der Situation:

    Ich habe hier 3 Tabellen

    1. Tabelle Aufbau
    tabelle1
    |id |name |

    2. Tabelle Aufbau
    tabelle2
    |id |name |

    3 Tabelle Aufbau
    tabelle 3
    |id |tabelle1_id | tabelle2_id |

    Nun versuche hier ich folgende Abfrage.
    Es sollen alle ids der Tabelle 1 ausgegeben werden, die nicht in der kombination tabelle1_id und tabelle2_id vorhanden sind.

    Verschiedenste Lösungsansätze habe ich hier schon seit 2 Tagen versucht, aber alle scheitern. Ich bekomm es einfach nicht gebacken, es ist als hätt cih ein Brett vor dem Kopf.

    Eventuell kann mir hier jemand helfen.
    Ich hoff ich hab hier alles so gut wie möglich erklärt.

    Und danke schoneinmal im vorraus.
    :hilfe2:
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 ninguno, 01.11.2005
    ninguno

    ninguno Tripel-As

    Dabei seit:
    13.05.2005
    Beiträge:
    162
    Zustimmungen:
    0
    willst du damit sagen, du suchst alle id' s aus tabelle1 die nicht auch in tabelle 3 enthalten sind?
    wenn ja, dann:
    Code:
    select id  from tabelle1 t1
      where not exists (select null from tabelle3 t3 where t3.tabelle1_id=t1.id);
     
  4. keanuf

    keanuf Jungspund

    Dabei seit:
    31.10.2005
    Beiträge:
    16
    Zustimmungen:
    0
    Ja so ähnlich mein ich das schon,
    und das Brett löst sich so langsam bei vor dem Kopf auf.

    Leider habe ich das Ergebnis noch nicht
    aber danke sach ich schonmal.

    Ergebnis der Anfrage soll sein, alle die tabelle1.id anzuzeigen, die in der tabelle3 noch nicht mit allen tabellen2.id verbunden sind.

    ich hoff ich hab das nun besser ausgedrückt.
    Und Danke schonmal für den Schubser in die richitge Richtung :))
     
  5. #4 ninguno, 02.11.2005
    ninguno

    ninguno Tripel-As

    Dabei seit:
    13.05.2005
    Beiträge:
    162
    Zustimmungen:
    0
    weiss nicht ob ich's richtig verstanden hab, aber vielleicht meinst du's so:
    Code:
    select distinct tab1.id
      from tab1,tab2
      where not exists
        (select null
           from tab3
           where tab3.tab1_id=tab1.id and tab3.tab2_id=tab2.id)
      order by tab1.id
    
    das selektiert alle id's aus tab1 die in tab3 nicht mit allen id's aus tab2 verknüft sind
     
  6. keanuf

    keanuf Jungspund

    Dabei seit:
    31.10.2005
    Beiträge:
    16
    Zustimmungen:
    0
    ninguno ich weis gar nicht wie ich dir danken soll.,

    Ich aufjedenfall muss hier noch viel lesen.
    und lernen wie ich das sehe.
    Aber als ich deine Abfrage gesehen habe,
    viel es mir wie schuppen von den Augen.

    Alles läuft super und Danke nochmals
    :))
     
  7. bernie

    bernie Jungspund

    Dabei seit:
    29.12.2005
    Beiträge:
    15
    Zustimmungen:
    0
    ähnliches Problem

    hallo,

    ich habe ein ziemlich ähnliches Problem, kann eine problemlösung leider nicht von oben ableiten

    meine db:

    tabelle "benutzer" mit den feldern "benutzernr" und ein paar unwichtigen
    tabelle "mitglied" mit "benutzernr" und "gruppenr"

    jetzt möchte ich gerne alle benutzer anzeigen, die in keiner gruppe mitglied sindzugewiesen sind.

    habs schon ansatzweise versucht, funzt aber nicht:
    Code:
    SELECT  DISTINCT benutzer. * 
    FROM benutzer
    WHERE NOT EXISTS ( 
      SELECT  NULL 
      FROM mitglied
      INNER  JOIN benutzer ON mitglied.benutzernr = benutzer.benutzernr
    )
    lg bernie
     
  8. #7 ninguno, 19.01.2006
    ninguno

    ninguno Tripel-As

    Dabei seit:
    13.05.2005
    Beiträge:
    162
    Zustimmungen:
    0
    so als schnellschuss würd ich sagen
    Code:
    SELECT   * 
    FROM benutzer
    WHERE NOT EXISTS ( 
      SELECT  NULL 
      FROM mitglied
          WHERE mitglied.benutzernr = benutzer.benutzernr
    )
     
  9. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  10. bernie

    bernie Jungspund

    Dabei seit:
    29.12.2005
    Beiträge:
    15
    Zustimmungen:
    0
    danke für die schnelle antwort
    funzt aber leider nicht, könnte auch daran liegen, dass ich MySQL 4.0.18 verwende
    http://dev.mysql.com/doc/refman/5.0/en/rewriting-subqueries.html hat mich auf den richtigen weg geführt
    und so hauts hin
    Code:
    SELECT benutzer.* 
    FROM benutzer
    LEFT JOIN mitglied ON benutzer.benutzernr = mitglied.benutzernr
    WHERE mitglied.benutzernr IS NULL
    
    lg bernie
     
  11. #9 jackie_brown, 19.01.2006
    jackie_brown

    jackie_brown Mitglied

    Dabei seit:
    19.10.2005
    Beiträge:
    40
    Zustimmungen:
    0
    ja ich würds auch mit nem LEFT JOIN probieren, der holt dir eigentlich alles aus der linken (1sten) tabelle was nicht in der rechten (2ten) tabelle ist
     
Thema:

SQL Statement

Die Seite wird geladen...

SQL Statement - Ähnliche Themen

  1. alias in if statement beim ersten Mal nicht erkannt

    alias in if statement beim ersten Mal nicht erkannt: Hallo, ich möchte einige Bash-Befehle in einer Zeile ausführen: if ! which bla ; then alias bla='ls' ; echo hi ; fi ; alias ; bla...
  2. Hilfe! Mit Datenbank verbinden und Statements ausführen.

    Hilfe! Mit Datenbank verbinden und Statements ausführen.: Liebe Community, Ich brauche dringendes eure Hilfe. Ich bin Praktikant bei der Telekommunikationsfirma [Name entfernt]. Ich bin nun die 3. Woche...
  3. % in SQL Statement

    % in SQL Statement: Hallo Ich will in Perl folgende Abfrage starten: $dbh->prepare ("SELECT * FROM tabelle where dateiname = 'name.%.txt';")Funktioniert aber...
  4. (AufAbwegen) - MSSQL Server Statement - Syntax

    (AufAbwegen) - MSSQL Server Statement - Syntax: Hallo Gemeinde, ich bin auf Abwegen und brauche "mal eben" ein MSSQL Statement, ich habe das ganze schon so lange nicht mehr gemacht das ich auch...
  5. Tabelle aus SQL-Statement filtern

    Tabelle aus SQL-Statement filtern: hallo zusammen ich möchte aus einem übergebenen sql-statement (parameter eines shell scripts) die angegebene tabelle herausfiltern, da ich diese...