sql >> Database >  >> RDS >> Oracle

oracle 12c - selecteer string na het laatste voorkomen van een karakter

Voor de volledigheid is hier een oplossing met reguliere expressies (niet erg ingewikkeld IMHO :-) ):

select regexp_substr(
  'ThisSentence.ShouldBe.SplitAfterLastPeriod.Sentence',
  '[^.]+$') 
from dual

De regex

  • gebruikt een negated character class om alles te matchen behalve een punt [^.]
  • voegt een kwantor toe + om een ​​of meer van deze te matchen
  • gebruikt een anker $ om overeenkomsten te beperken tot het einde van de tekenreeks


  1. Veelvoorkomende fouten van DBA in MS SQL Server

  2. MySQL-leerpad

  3. MySQL - Operand moet 1 kolom(men) bevatten

  4. Voeg een gegenereerde kolom toe aan een tabel in SQLite