|
17#
SQL> set timing on;
SQL>
SQL> with t as (select chr(level+64) c from dual connect by level<=5),
2 s(lvl,str) as (select 1 lvl,c str
3 from t
4 union all
5 select s.lvl +1,
6 s.str||t.c
7 from s,t
8 where lvl < 25
9 and substr(s.str,length(s.str),1)<=t.c
10 )
11 select count(*) from s where lvl = 25
12 /
COUNT(*)
----------
23751
Executed in 1.123 seconds |
|