gibt es in Postgres eine Funktion, um das letzte und vorletzte Vorkommen eines Zeichens in einer Spalte (Typ: character varying) herauszufinden.
Oder muss ich dazu eine Funktion schreiben?
Zur Erläuterung vielleicht: ich habe in einer Spalte einen String stehen der eine n Pfad dastellt. Unterschiedliche Hierarchiestufen sind durch einen Punkt getrennt. Ich benötige nun den Teilstring zwischen den vorletzten und letzten Punkt und den Teilstring nach dem letzten String.
Ja wie ich den String rauslöse ist ja dann klar, nur wie bekomme ich die Positionen, wo ich beginnen und enden muss, ich brauche also die Positionen von dem letzten und von dem vorletzten Punkt.
Substring liefert mir doch nur den string ab einer bekannten Position?!
Bitte korrigiert mich wenn ich falsch liege.
Nun, die Länge des Strings wiederum liefert die LENGTH(), aber ev. kann substring() auch mit negativen Zahlen arbeiten und zählt dann ab dem Ende, nicht dem Anfang.
Naja ich brauche ja mehrere Koordinaten.
Ich habe z.B. so etwas in der Spalte stehen: ordner1.ordner2.ordner3.ordner4.wert
und möchte daraus dann z.b. ordner4 und wert haben.
In der nächsten Spalte kann das ganze schon wieder anders aussehen: ordner_neu1.ordner_sehrneu2.ordner_alt3.temp_ordner.neuer_wert
d.h. also die Werte für die Positionen variieren und mir reicht ein index nicht. ich könnte das natürlich auch von meinem programm erledigen lassen, dachte nur, dass es vielleicht schon so etwas fertig gibt, so dass ich die korrekten werte gleich erhalte.