Veröffentlicht 23. Juli 200421 j Hallo Leute. Folgendes Ich gabe eine Datenbank mit drei Tabellen: 1. software 2. gruppe 3. status nun möchte ich mir die Tabelle software ausgeben. Soweit so gut. Die Tabelle software hat das Attribut Gkenn --> int Werte. Jetzt steht in der Tabelle gruppe die Bezeichnung für den jeweiligen int Wert, z.B. 1 | Tools. Und mit der beschriebenen Anweisung, möchte ich Gkenn in der Tabelle Software die Beschreibung des int Wertes aus der Tabelle gruppe zuweisen. Beziehung: n:1 (software:gruppe). Ich habe da irgendwie einen Fehler drin sehen ihn aber nicht. SELECT DiskNr, Titel, Anzahl, Gkenn FROM software AS A LEFT JOIN gruppe AS B ON A.Gkenn = B.Gkenn LIMIT 0 , 30 Darufhin meldet MySQL Fehler SQL-Befehl : SELECT DiskNr, Titel, Anzahl, Gkenn FROM software AS A LEFT JOIN gruppe AS B ON A.Gkenn = B.Gkenn LIMIT 0 , 30 MySQL meldet: #1052 - Column: 'Gkenn' in field list is ambiguous
23. Juli 200421 j Gkenn gibt es in Tabelle A und Tabelle B. Damit musst Du bei Deinem Select sagen, aus welcher Tabelle er Gkenn nehmen soll. Also z.B. Select A.Gkenn from.... oder Select B.Gkenn from.... Gruß, Katja
23. Juli 200421 j Das Stimmt, ist ja auch irgendwie logisch. Also z.B. Select A.Gkenn from.... oder Select B.Gkenn from.... Nur jetzt zeigt es mir Gkenn aus der zweiten Tabelle an. Und ich möchte ja anstelle von Gkenn aus der zweiten Tabelle die Bezeichnung (2. Tabelle). Gkenn in der ersten Tabelle soll ja eigentich der Fremdschlüssel sein. Bsp.: Tabelle1 bla1 bla2 Gkenn gggi ffff 1 Tabelle2 Gkenn Bezeichnug 1Tools Wenn ich total auf dem Schlauch stehe, könnte mich bitte mal jemand runter schubsen?
23. Juli 200421 j Dann lass doch b.Bezeichnung ausgeben. SELECT DiskNr, Titel, Anzahl, a.Gkenn, b.bezeichnung FROM software AS A LEFT JOIN gruppe AS B ON A.Gkenn = B.Gkenn Oder versteh ich jetzt was falsch? Frank
23. Juli 200421 j Oder versteh ich jetzt was falsch? Frank ich hatt mir das os vorgestellt: um in der Haupttabelle (software) Speicherplatz zu sparen, hab ich den Fremdschlüssel Gkenn eingeführt. Gkenn hat die int Werte 1 bis 6. In der Tabelle gruppe steht jetzt für jeden int Wert (Gkenn) z.B. für 1 die Programmgruppe "Deceloper Tools" (das ist das Attribut Beschreibung). Wenn ich nun die Tabellt software auslese, steht bei dem Attribut Gkenn nun ein int Wert zw. 1 und 6. Bei der Ausgabe möcht ich aber an dieser Stelle, die passende Beschreibung aus der Tabelle gruppe. Kann man mein vorhaben jetzt vielleicht besser deuten?????
23. Juli 200421 j select software.softwartitel,......, gruppe.bezeichnung from software, gruppe where software.gkenn=gruppe.gkenn Das ist doch ein einfacher Join. Frank
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.