Hallo Leute,
ich hatte bis dato noch nicht viel mit Datenbanken und SQL zutun und brauche hilfe bei einem Query.
Ich habe eine Tabelle, mit zwei mal drei Feldern welche Foreign Keys enthalten.
Nun möchte ich ein paar Felder der Haupt-Tabelle holen und dann per INNER JOIN ein paar Daten die durch die Foreign Keys referenziert wurden.
Mein Query sieht in etwa so aus:
Ich bekomme keinen Fehler, aber dafür 0 Rows...
Erkennt jemand was ich falsch mache?
Edit:
Hallo,
bin gerade nochmal meine Daten durch gegangen und habe einen Blick auf das Cheat Sheet für Joins geworfen...
Problem war, dass ich einen INNER statt LEFT JOIN verwendet habe.
Das war einfach der falsche JOIN für die unten im Spoiler beschriebene Situation.
*Topic bearbeitet da er so editiert wurde das zusammenhang zur Lösung nicht gleich klar war.* ~NoFear23m
ich hatte bis dato noch nicht viel mit Datenbanken und SQL zutun und brauche hilfe bei einem Query.
Ich habe eine Tabelle, mit zwei mal drei Feldern welche Foreign Keys enthalten.
Nun möchte ich ein paar Felder der Haupt-Tabelle holen und dann per INNER JOIN ein paar Daten die durch die Foreign Keys referenziert wurden.
Mein Query sieht in etwa so aus:
SQL-Abfrage
- SELECT sit.f1, sit.f2, sit.f3 AS 'some_id',
- tbl_Kunde.Name AS 'Kunde',
- pdt1.FullName AS 'Fullname_01',
- pdt2.FullName AS 'Fullname_02',
- pdt3.FullName AS 'Fullname_03',
- snt1.SomeNumber AS 'SomeNumber_01',
- snt2.SomeNumber AS 'SomeNumber_02',
- snt3.SomeNumber AS 'SomeNumber_03'
- FROM
- tbl_SomeImportantTable AS sit
- INNER JOIN tbl_Kunde
- ON sit.Kunde_FK = tbl_Kunde.K_ID
- INNER JOIN tbl_SomeNumberTable snt1
- ON (sit.SomeNumber_FK_01 = snt1.SNT_ID)
- INNER JOIN tbl_SomeNumberTable snt2
- ON (sit.SomeNumber_FK_02 = snt2.SNT_ID)
- INNER JOIN tbl_SomeNumberTable snt3
- ON (sit.SomeNumber_FK_03 = snt3.SNT_ID)
- INNER JOIN tbl_PersonDataTable pdt1
- ON (sit.PersonDataTable_FK_01 = pdt1.PDT_ID)
- INNER JOIN tbl_PersonDataTable pdt2
- ON (sit.PersonDataTable_FK_02 = pdt2.PDT_ID)
- INNER JOIN tbl_PersonDataTable pdt3
- ON (sit.PersonDataTable_FK_03 = pdt3.PDT_ID);
Ich bekomme keinen Fehler, aber dafür 0 Rows...
Erkennt jemand was ich falsch mache?
Edit:
Hallo,
bin gerade nochmal meine Daten durch gegangen und habe einen Blick auf das Cheat Sheet für Joins geworfen...
Problem war, dass ich einen INNER statt LEFT JOIN verwendet habe.
Das war einfach der falsche JOIN für die unten im Spoiler beschriebene Situation.
*Topic bearbeitet da er so editiert wurde das zusammenhang zur Lösung nicht gleich klar war.* ~NoFear23m
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Nofear23m“ ()