wurtzel Geschrieben 22. August 2007 Geschrieben 22. August 2007 Hallo ich hab folgendes problem ich hab eine Tabelle mit dem Aufbau Zeile | Spalte | Wert 1 | 1 |Zelle(1,1) 1 | 2 |Zelle(1,2) 1 | 3 |Zelle(1,3) 2 | 1 |Zelle(2,1) 2 | 2 |Zelle(2,2) 2 | 3 |Zelle(2,3) diese möchte ich mit sql in die form Zeile | Spalte 1 | Spalte 2 | Spalte 3 1 | Zelle(1,1) | Zelle(1,2) |Zelle(1,3) 2 | Zelle(2,1) | Zelle(2,2) |Zelle(2,3) 3 | Zelle(3,1) | Zelle(3,2) |Zelle(3,3) bringen. wie kann man das mit möglich wenig joins umsetzen Zitieren
Amstelchen Geschrieben 22. August 2007 Geschrieben 22. August 2007 dazu dürfte IMO im günstigsten fall überhaupt kein JOIN notwendig sein, was aber vom DBMS abhängt, welches du aber nicht angegeben hast. s'Amstel Zitieren
wurtzel Geschrieben 22. August 2007 Autor Geschrieben 22. August 2007 Datenbank soll Oracle 10 r1 oder r2 werden oder welche unterstützt das noch Zitieren
Amstelchen Geschrieben 22. August 2007 Geschrieben 22. August 2007 im prinzip ist das nichts anderes als eine pivotierung, und das kann oracle auch ohne JOIN. wenn deine ursprungstabelle immer dreiergruppen und deine zieltabelle/-abfrage immer drei spalten haben soll, ist das kaum schwierig; deine zieltabfrage muss als ergebnisfelder eben genausoviele spalten wie eindeutige zeilen liefern, und dazu eben den kreuzwert. ich verwende gerne ein package namens pivot_pkg - möglicherweise ist das aber etwas zu oversized für deine ansprüche. schau bei http://asktom.oracle.com rein und such nach PIVOT - du wirst eine unglaubliche menge an anregungen finden, dein SQL zu formulieren. s'Amstel Zitieren
wurtzel Geschrieben 22. August 2007 Autor Geschrieben 22. August 2007 vielen dank das war der Hinweis den ich brauchte Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.