Pinhead Geschrieben 22. September 2005 Geschrieben 22. September 2005 Hallo, stellt euch bitte folgendens Szenario vor. Ein Kunde kann eine Beanstandung aufgeben. Diese Beanstandung bekommt eine eindeutige Nummer. Diese Beanstandung wird einem Bearbeiter zugeordnet. Die Daten vom Kunden und Bearbeiter werden in einer personen tabelle gepflegt. Die Nummern des Kunden und des Bearbeiters werden in feldern der beanstandungstabelle gespeichert. Nun möchte ich mit einer Abfrage die Beanstandungsnummer und die Namen des Kunden und des Bearbeiters herausbekommen. Zur Zeit arbeite ich mit folgender Abfrage select beanstandungsnummer, name ||', '|| vorname as kundenname from tbl_beanstandung, tbl_benutzer where beanstandungsnummer = 13000308050024 and kunde = benutzernummer UNION SELECT beanstandungsnummer, name ||', '|| vorname as bearbeitername from tbl_beanstandung, tbl_benutzer where ticketnummer = 13000308050024 and aktbearbeiter = benutzernummer Die Namen werden auch schon richtig angezeigt. Das Problem ist nur das hierbei auch zweimal die Beanstandungsnummer ausgegeben wird. Gibt es die Möglichkeit das in eine Ergebnismenge zu bekommen ? [EDIT] Achja DB System ist Oracle
Felicie Geschrieben 22. September 2005 Geschrieben 22. September 2005 Ein Union macht nix anderes als 2 Abfragen hintereinander auszuführen und die Ergebnisse aneinander zu hängen. Du kannst die Ergebniswerte also nicht mischen. Du musst die eine Tabelle, wenn ich das richtig verstanden hab 2x joinen. Sag mal genau, in welcher Tabelle welche Felder sind, dann probier ich das mal.
Pinhead Geschrieben 22. September 2005 Autor Geschrieben 22. September 2005 t_beanstandung beanstandungsnummer thema kundennummer aktbearbeiter t_person personennummer name vorname Personennummer ist der Schlüssel der in kundennummer und aktbearbeiter gespeichert ist
Felicie Geschrieben 22. September 2005 Geschrieben 22. September 2005 t_beanstandung beanstandungsnummer thema kundennummer aktbearbeiter t_person personennummer name vorname Personennummer ist der Schlüssel der in kundennummer und aktbearbeiter gespeichert ist dann würde ich sagen select t1.beanstandungsnummer, t2.vorname + t2.name as kunde, t3.vorname + t3.name as bearbeiter from t_beanstandung t1, t_person t2, t_person t3 where t1.kundennummer = t2.personennummer and t1.aktbearbeiter = t3.personennummer and t1.beanstandungsnummer = 123 so...ich weiss nur nicht wie man jetzt da verknüpft (bei vorname, nachname) um beide zusammenzufügen in einer spalte
Pinhead Geschrieben 22. September 2005 Autor Geschrieben 22. September 2005 :uli Ja super . Danke das klappt.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden