sql >> Database teknologi >  >> RDS >> Oracle

Brug af REGEXP_SUBSTR med Strings Qualifier

Problemet med din forespørgsel er, at hvis du bruger [^PLE] det ville matche alle andre tegn end P eller L eller E. Du leder efter en forekomst af PLE fortløbende. Så brug

select REGEXP_SUBSTR(colname,'(.+)PLE',1,1,null,1) 
from tablename

Dette returnerer understrengen op til den sidste forekomst af PLE i strengen.

Hvis strengen indeholder flere forekomster af PLE, og kun understrengen op til den første forekomst skal udtrækkes, skal du bruge

select REGEXP_SUBSTR(colname,'(.+?)PLE',1,1,null,1) 
from tablename


  1. Eksporter RDS-data til S3/Glacier

  2. Datofølge i SQL?

  3. SQL-forespørgsel til at opdele kolonnedata i rækker

  4. Konverter et månedsnavn til månedsnummeret i SQL Server (T-SQL)