loeschknecht 0 Geschrieben 3. Mai 2015 Melden Teilen Geschrieben 3. Mai 2015 Hallo zusammen und vielen Dank für Eure Infos aus dem Forum, das ich schon mehrfach erfolgreich zur Problemlösung nutzen konnte. Nun habe ich allerdings einen "Fall" den ich so nicht finde oder zumindest nicht ableiten kann, deshalb schreibe ich hier meinen ersten Post. Ich nutze Windows SQL Server 2008 R2 und setzte dort folgende Abfrage ab: SELECT ID, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_2 WHERE (FeldDefinitionenID = 158) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Plan_freig_von FROM dbo.TBL_INVENTAR Als Ergebnismenge erhalte ich eine Spalte mit ID Nummern und eine Spalte die u.U. eine Zahl enthält. Dieser Zahl ist in einer anderen Tabellen ein Name als Kontakt zugeordnet. Die Verknüpfung sieht wie folgt aus: dbo.TBL_INVENTAR_DATEN.Wert=dbo.TBL_KONTAKTE.ID Wie kann ich nun die Abfrage dahingehend erweiteren, dass mir nicht die Zahl sondern der Nachname (dbo.TBL_KONTAKTE.Nachname) angezeigt wird?? Vielen Dank für Eure Hilfe! Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 3. Mai 2015 Melden Teilen Geschrieben 3. Mai 2015 Hallo und willkommen im Forum. Das dürfte ein simpler Join sein. Schaue Dir mal die Anleitungen auf http://www.w3schools.com/sql/sql_join.asp an. Zitieren Link zu diesem Kommentar
loeschknecht 0 Geschrieben 3. Mai 2015 Autor Melden Teilen Geschrieben 3. Mai 2015 (bearbeitet) Danke für den Tip. Ich habe es gerade mal mit einem Join (nach Vorlage aus dem Link) versucht, allerdings müsste ich ja in der Unterabfrage zwei DInge abfragen und das geht nicht, oder? Zumindest bekomme ich diesen Fehler. bearbeitet 3. Mai 2015 von loeschknecht Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 3. Mai 2015 Melden Teilen Geschrieben 3. Mai 2015 Vergiss mall die Unterabfrage und versuche alles mit Joins zu machen. Der Sinn des Sub-Selects erschließt sich mir gerade nicht. Zitieren Link zu diesem Kommentar
loeschknecht 0 Geschrieben 3. Mai 2015 Autor Melden Teilen Geschrieben 3. Mai 2015 Ich habe aber keinen blassen Schimmer, wie ich das umstellen soll... Hier ist nochmal die komplette Abfrage: SELECT ID, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_9 WHERE (FeldDefinitionenID = 146) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS letzt_Aend_am, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_8 WHERE (FeldDefinitionenID = 147) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS beauftr_von, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_7 WHERE (FeldDefinitionenID = 152) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Aktual_beauftr_am, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_6 WHERE (FeldDefinitionenID = 153) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Aktual_beauftr_von, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_5 WHERE (FeldDefinitionenID = 154) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Fehler_gemeld_am, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_4 WHERE (FeldDefinitionenID = 148) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Endfassg_Eing_am, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_3 WHERE (FeldDefinitionenID = 155) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Plan_freig_am, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_2 WHERE (FeldDefinitionenID = 158) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Plan_freig_von, (SELECT Wert FROM dbo.TBL_INVENTAR_DATEN AS TBL_INVENTAR_DATEN_1 WHERE (FeldDefinitionenID = 156) AND (InventarID = dbo.TBL_INVENTAR.ID)) AS Bemerkungen FROM dbo.TBL_INVENTAR Und für die "Werte" bei den FelddefinitionenID 147,153 und 156 soll eben nicht der "Wert" in der Spalte ausgegeben werden sondern der dazugehörige Nachname aus der Tabelle dbo.TBL_KONTAKTE! Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.