Announcement

Collapse
No announcement yet.

mysql Abfrage

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

  • mysql Abfrage

    Tabelle Projekte
    ------------------
    id_projekte
    id_mitarbeiter_erstellt

    Tabelle Verantwortliche
    -----------------------
    id_verantw
    id_projekte
    id_mitarbeiter_zugewiesen

    Wenn der User ein Projekt erstellt wird seine ID in id_mitarbeiter_erstellt eingefügt.
    Es kann auch dem Projekt ein Verantwortlicher zugeordnet werden.
    Das passiert in der Tabelle Verantwortliche die mit der Tabelle Projekte 1 zu n verknüpft ist.

    Jetzt möchte ich eine Abfrage machen wo die Tabellen so verknüpfen, dass alle Projekte angezeigt werden in denen kein (und das ist das kniffellige)
    User und Kein Verantwortlicher drinnen ist.

    Ich hab auch schon einen Lösungsansatz für die Tabelle Projekte, wo ich alle selektiere wo kein User mit einer bestimmten ID drinnen ist.

    SELECT * FROM Projekte WHERE id_mitarbeiter_erstellt NOT IN ('".$id_user."')

    Ich blaube mann kann es mit einem LEFT JOIN machen, aber Wie?

    Bitte um Hilfe

  • #2
    Jetzt möchte ich eine Abfrage machen wo die Tabellen so verknüpfen, dass alle Projekte angezeigt werden in denen kein (und das ist das kniffellige)
    User und Kein Verantwortlicher drinnen ist.
    Erkläre mal genauer:

    Kein Verantwortlicher => id_projekte existiert nicht in Verantwortliche
    aber wie entscheidest du kein User?
    Bei SQL-Code bitte beachten: Formatierung von SQL in Beiträgen

    Comment


    • #3
      genauere Erklärung

      Mann kann Projekte erstellen, in der Tabelle Projekte, und in der wird die User ID (id_mitarbeiter_erstellt) des Users gespeichert der das Projekt angelegt hat.
      Wenn das Projekt erstellt ist kann mann Für diese Projekt Verantwortliche definieren. Die dann in der Tabelle Verantwortliche mit der id_mitarbeiter_zugewiesen
      gespeichert werden. Tabelle Projekte und Tabelle Verantwortliche sind über id_projekte 1 zu n verknüpft.

      Ich möchte alle Projekte ausgeben in denen kein User mit der zb ID 78 oder kein Verantwortlicher mit der ID 78 der Auch gleichzeitig User ist enthalten ist.

      Comment


      • #4
        In dem Fall reichts doch nur die herauszufinden, welche id_projekte nicht in der Verantwortlichen-Tabelle ist

        Code:
        SELECT p.id_projekte
        FROM Projekte p
        LEFT JOIN Verantwortliche v
            USING(id_projekte)
        WHERE v.id_projekte IS NULL
        Bei SQL-Code bitte beachten: Formatierung von SQL in Beiträgen

        Comment

        Working...
        X