Autor Beitrag
TheUnknown
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 334



BeitragVerfasst: Fr 11.02.22 22:51 
Hallo,

ich steh auf dem Schlauch, ich krieg den Code nicht hin.
Ich habe DREI Tables, entsprechend ihrer Kategorie genannt PROJEKTE, AUFGABEN und USER. Jeder Table hat die Spalte "ID". Und AUFGABEN und TEAM haben jeweils noch "PARENT_ID".
Das heißt: TEAM merkt sich in PARENT_ID, zu welcher ID auf AUFGABEN es jeweils gehört. Und AUFGABEN merkt sich in PARENT_ID, zu welcher ID in PROJEKT es gehört.

Beispiel: Mein PROJEKT Haushalt hat die AUFGABEN Wischen, Spülen und Fenster.
Für Wischen gibt es das TEAM bestehend aus a) Anita und b) Anton.
Für Spülen gibt es das TEAM bestehend aus a) Bernd, b) Beate, c) Björn.
Für Fenster gibt es das TEAM bestehend aus a) Carlo.

In der Datenbank steht alles ganz korrekt drin. Es gibt keine Fehler, alles ist logisch und richtig eingetragen. Ich kann allerdings nicht direkt abfragen, welche Personen in der TEAM-Tabelle dem PROJEKT Haushalt angehören. Weil nur der Tabelle AUFGABEN weiß, welcher Aufgabe welches Team zugeordnet ist.

Ich will jetzt aber in meinem MySQL-Query es so machen, dass ich alle Personen erhalte, die bei dem PROJEKT Haushalt mitmachen, egal, zu welcher AUFGABE sie gehören. Mit anderen Worten
ausblenden SQL-Anweisung
1:
select ID from TEAM where "die PARENT_ID von AUFGABE auf die ID von Projekt verweist"					

Oder anders: "Gib mir alle IDs von TEAM, die zur Haushalt-ID von PROJEKT gehören"

Ich hoffe, das war verständlich, sorry, aber genauer kann ich es nicht erklären.
Es muss wohl mit einem Sub-SELECT oder einem JOIN gehen... Schätze ich.

Kann mir jemand helfen, bitte!? :)

Moderiert von user profile iconTh69: SQL-Tags hinzugefügt
ub60
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 762
Erhaltene Danke: 127



BeitragVerfasst: Sa 12.02.22 02:02 
Bitte stelle doch mal einen Screenshot Deiner Tabellen ein mit allen Werten, die Du zugewiesen hast.
Ich glaube (aus den bisherigen Erläuterungen), dass Dein Tabellenkonzept fehlerhaft ist. Du solltest zumindest noch Tabellen haben, in denen die IDs der einzelnen Tabellen verknüpft sind.
Das Prinzip der PARENT_IDs kann ich im Moment leider noch nicht so richtig nachvollziehen ...

ub60
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Sa 12.02.22 11:12 
Ja, dafür sollten (INNER) JOINS über alle drei Tabellen nötig sein, mit jeweils der Verknüpfung der ID mit der PARENT_ID der untergeordneten Tabelle.
Auf SQL Joins kannst du dir ein Beispiel anschauen und selber auch herumspielen.