sql >> Databasteknik >  >> RDS >> Oracle

oracle 12c - välj sträng efter senaste förekomsten av ett tecken

Bara för fullständighetens skull, här är en lösning som använder reguljära uttryck (inte särskilt komplicerat IMHO :-) ):

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

Regexet

  • använder en negerad teckenklass för att matcha allt utom en punkt [^.]
  • lägger till en kvantifierare + för att matcha en eller flera av dessa
  • använder ett ankare $ för att begränsa matchningar till slutet av strängen


  1. Introduktion till auto_explain:Hur man loggar långsamma Postgres-frågeplaner automatiskt

  2. Frågan tar timeout från webbappen men körs bra från managementstudio

  3. Best Practices för PostgreSQL-replikering - Del 1

  4. Ta reda på ledigt utrymme på tablespace