Oracle
 sql >> база данни >  >> RDS >> Oracle

Извличане на n-ти подниз

Четвъртият параметър на REGEX_SUBSTR се нарича occurence . Просто трябва да зададете срещането, което искате да видите за всяка колона:

CREATE TABLE T (id varchar2(30));
INSERT INTO T VALUES ('0234-RDRT-RS111-M-EU');
INSERT INTO T VALUES ('0234-RDRT-RSD123-M-EU');

SELECT regexp_substr(id,'[^-]+',1,1) as col1,
       regexp_substr(id,'[^-]+',1,2) as col2,
       regexp_substr(id,'[^-]+',1,3) as col3,
       regexp_substr(id,'[^-]+',1,4) as col4,
       regexp_substr(id,'[^-]+',1,5) as col5
  FROM t;

COL1    COL2    COL3    COL4    COL5
0234    RDRT    RS111   M   EU
0234    RDRT    RSD123  M   EU

Вижте REGEX_SUBSTR в документацията на Oracle за повече подробности.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. актуализиране на колона с клеймо за време с клеймо, съдържащо „T“

  2. Работа на SQL Agent - Връзката може да не е конфигурирана правилно или да нямате правилните разрешения за тази връзка?

  3. Вземете стойност от FieldA, изпратете към функцията db, върнете стойността към FieldB

  4. Предупреждение:ocifetch() [function.ocifetch]:ORA-24374:дефинирайте не е направено преди извличане или изпълнете и извлечете

  5. Доклад за грешка - ORA-25155:колоната, използвана в NATURAL съединение, не може да има квалификатор 25155. 00000 - колоната, използвана в NATURAL съединение, не може да има квалификатор