Update einer Spalte mit Teilstring aus gleicher Tabelle

ratloser99

Grünschnabel
Hallo zusammen,

es ist bestimmt total einfach, aber ich krieg's irgendwie nicht hin, in einer Oracle 10g-DB den String, den ich von einem String aus der selben Tabelle erzeugt habe, in das passende Feld einzufügen.
Hier ist die Tabellenstruktur der Tabelle tmp_group, wie sie zum Schluss aussehen soll:

group_path || group
.Schulung || Schulung
.Schulung.Test || Test
.Schulung.Test2 || Test2
.Schulung.Test2.Test2_2 || Test2_2
.Testkennungen || Testkennungen

Ich brauche also nur den rechten Teil des Strings aus group_path bis zum ersten Punkt von rechts. Das bekomme ich so:
Code:
Select 
     Reverse(Substr(Reverse(group_path),1, INSTR(Reverse(group_path),'.')-1) )
 from 
     tmp_group

Mein Problem ist nun, wie ich in die Zeile des Pfades die richtige Gruppe einfüge. Das geht sicherlich mit einem UPDATE, aber das folgende Statement liefert mir nicht das gewünschte Ergebnis:
Code:
UPDATE
     tmp_group 
SET
     group = (Select 
                Reverse(Substr(Reverse(group_path),1, INSTR(Reverse(group_path),'.')-1) )
              from
                tmp_group
             )
Ich bekomme kein eindeutiges Ergebnis aus dem SELECT.
Wie kann ich das lösen?
 
Na sowas einfaches! Da war ich also schon kurz davor und habe den Wald wegen der Bäume nicht gesehen.... :eek:
Es funktioniert, vielen Dank!
 
Zurück