Hallo,
wir haben seit 3 Wochen SQL an der Uni und ich komme an einer Aufgabe nicht weiter.
"
Geben Sie die Relation Auftrag aus. Ersetzen Sie dabei die Attribute Persnr und Kundnr durch die benutzerfreundlichen Attribute Personalname und Kundenname.
Hinweis: Es liegt ein Verbund (Join) zwischen den drei Relationen Auftrag, Personal und Kunde
vor. Benutzen Sie bitte diesen Join-Operator. Die beiden neuen Spalten sollen Personalname und Kundnenname lauten
"
Relation Auftrag
Auftrnr||Datum||kundnr||persnr
Relation Kunde
Nr||Name|| Strasse||PLZ||Ort
Relation Personal
persnr||name||Strasse||PLZ||Ort
Wir benutzen SQL-Developer.
Mein Befehl sieht folgendermaßen aus
Als Fehler bekomme ich die Meldung:
"
ORA-00918: Spalte nicht eindeutig definiert
00918. 00000 - "column ambiguously defined"
*Cause:
*Action:
Fehler in Zeile: 88 Spalte: 25"
Wenn ich nur die erste Join-Abfrage mache und im selectteil
weglasse bekomme ich das richtige Erg. (Nur halt ohne die Spalte mit dem Kundennamen.
also konkret so
Wo liegt mein Fehler? Kann es sein, dass es daran liegt, dass Auftrag.kundnr und Kunde.Nr zwar die gleichen Informationen haben aber die Spalten (kundnr und Nr.) unterschiedliche Bezeichnungen haben? Wenn ja wie kann ich das ändern
Vielen Dank
wir haben seit 3 Wochen SQL an der Uni und ich komme an einer Aufgabe nicht weiter.
"
Geben Sie die Relation Auftrag aus. Ersetzen Sie dabei die Attribute Persnr und Kundnr durch die benutzerfreundlichen Attribute Personalname und Kundenname.
Hinweis: Es liegt ein Verbund (Join) zwischen den drei Relationen Auftrag, Personal und Kunde
vor. Benutzen Sie bitte diesen Join-Operator. Die beiden neuen Spalten sollen Personalname und Kundnenname lauten
"
Relation Auftrag
Auftrnr||Datum||kundnr||persnr
Relation Kunde
Nr||Name|| Strasse||PLZ||Ort
Relation Personal
persnr||name||Strasse||PLZ||Ort
Wir benutzen SQL-Developer.
Mein Befehl sieht folgendermaßen aus
SQL:
select auftrag.auftrnr, auftrag.datum, personal.name as Personalname, kunde.name as Kundenname
from (auftrag inner join personal on Personal.PERSNR = auftrag.PERSNR),AUFTRAG inner join kunde on Auftrag.kundnr=kunde.NR;
Als Fehler bekomme ich die Meldung:
"
ORA-00918: Spalte nicht eindeutig definiert
00918. 00000 - "column ambiguously defined"
*Cause:
*Action:
Fehler in Zeile: 88 Spalte: 25"
Wenn ich nur die erste Join-Abfrage mache und im selectteil
SQL:
kunde.name as Kundenname
also konkret so
SQL:
select auftrag.auftrnr, auftrag.datum, personal.name as Personalname
from (auftrag inner join personal on Personal.PERSNR = auftrag.PERSNR);
Wo liegt mein Fehler? Kann es sein, dass es daran liegt, dass Auftrag.kundnr und Kunde.Nr zwar die gleichen Informationen haben aber die Spalten (kundnr und Nr.) unterschiedliche Bezeichnungen haben? Wenn ja wie kann ich das ändern
Vielen Dank