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

Как мога да получа уникалните знаци от низ в Oracle?

SELECT SUBSTR(REGEXP_SUBSTR('CCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCCCCCCCCC', '^(.)\1*.'), -2, 2) RESULT
FROM DUAL;

Връща CX

Ето друго решение:

Select Replace (Wm_Concat (C), ',', '')
From
  (Select Substr ('CCCXCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCC', Rownum, 1) C,
    Min (Rownum) Rn
  From Dual
    Connect By Rownum <= Length ( 'CCCXCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCC')
  Group By Substr ( 'CCCXCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCC', Rownum, 1)
  Order By Rn
  ) X;

Връща всички уникални знаци по реда на тяхното възникване. Между другото, да, изглежда ужасно




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Номер на ред в sql сървър като LINE в USER_SOURCE oracle

  2. Как да настроите OTA в R12 и 11i

  3. Не може да се създаде екземпляр на грешка на доставчика на OLE DB като потребител на удостоверяване на Windows

  4. Как да разрешим ORA-00939:твърде много аргументи за функционална грешка?

  5. Предайте масив като входен параметър към съхранена процедура на oracle, използвайки просто jdbc извикване