Announcement

Collapse
No announcement yet.

SQL Suche über einen join

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

  • SQL Suche über einen join

    Hallo an Alle,

    irgendwie stehe ich auf dem Schlauch. Ich brauche eine SQL-Abfrage, die alle Datensätze aus einer Tabelle anzeigt, die in einer korrepndierenden Tabelle keinen Eintrag haben.

    Ich habe es mit

    SELECT * FROM `lsql_Links` WHERE not in (select LinkID from lsql_CatLinks where 1);

    versucht. Allerdings spuckt MySQL dann nur Fehler aus.

    Wer kann mir dringend helfen. Danke schon im Voraus.

    Frank L.

  • #2
    Hallo Frank,<pre>
    SELECT * FROM `lsql_Links` A
    WHERE A.IDLink not in (
    select B.LinkID
    from lsql_CatLinks B
    where 1);
    </pre>
    Liefert die Innere Abfrage sehr viele DS, dann ist es u.U. günstiger folgende Syntax zu verwenden:<pre>
    SELECT * FROM `lsql_Links` A
    WHERE not exists (
    select 'X'
    from lsql_CatLinks B
    where B.LinkID = A.IDLink);
    </pre>
    Gruß Fal
    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
      Ersteinmal vielen Dank für den Tipp.

      Leider funktioniert das aber auch nicht so richtig. MySQL spuckt nur Syntax-Fehler aus.

      SELECT * FROM lsql_Links A
      WHERE A.ID not in (
      select B.LinkID
      from lsql_CatLinks B
      where 1);

      und auch

      SELECT * FROM `lsql_Links` A
      WHERE not exists (
      select 'X'
      from lsql_CatLinks B
      where B.LinkID = A.IDLink);

      müssten laut meinem theoretischen Verständnis funktionieren, tun es aber nicht.

      Wer kann noch weiterhelfen

      Gruss
      FRank Laye

      Comment


      • #4
        Dann mach doch mal einen Spruch <b>WAS</b> für Syntaxfehler! Manchmal ist es auch nur ein Schreibfehler in einem Feld- oder Tabellennamen.

        Gruß Fal
        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 nochmals für die Antwort.

          Ich bin schon die ganze Zeit dabei die unterschiedlichen Syntax-Formen durchzuprobieren.

          Allerdings habe ich bisher noch keine Lösung oder irgend eine Ahnung wo der Fehler liegen könnte.

          Wer kann noch helfen ??

          Comment


          • #6
            Probier doch mal einen outer join

            select a.vertragsnummer, b.vertragsnummer
            from tabelle a, tabelle b
            where a.vertragsnummer = b.vertragsnummer(+

            Comment

            Working...
            X