sql >> Databáze >  >> RDS >> Oracle

Oracle - řetězcová kombinatorická permutace

Edit:Mám ten obecný. Nakonec opravdu jednoduché (ale chvíli mi trvalo, než jsem se tam dostal)

WITH words AS
(   SELECT  REGEXP_SUBSTR( '&txt', '\S+', 1, LEVEL )    AS word
        ,   LEVEL                                       AS num
    FROM    DUAL
    CONNECT BY LEVEL <= LENGTH( REGEXP_REPLACE( '&txt', '\S+\s*', 'X' ) )
)
SELECT  SYS_CONNECT_BY_PATH( W.word, ' ' )
FROM    words   W
CONNECT BY NOCYCLE PRIOR W.num != W.num

Edit2:Odstraněno nadbytečné maximum věcí. Zbylo z předchozích pokusů




  1. PDO PHP - Najít všechny řádky mezi 2 daty - zobrazuje se prázdné

  2. Existuje způsob, jak provést INSERT...ON DUPLICATE KEY UPDATE v Zend Framework 1.5?

  3. Bolesti hlavy Mysql 5.6 na Mac OSX

  4. Připojení c++ mysql bad_alloc pomocí konektoru c++