Почему разное количество строк ?

razliv
Дата: 23.11.2009 14:01:45
Есть следующий селект

select  a,rn, cnt
from ( select a, row_number() over (order by a) rn,COUNT (*) OVER () cnt from (
       select '1' a  from dual
        union all
      select '2'  a from dual
        union all
      select '3' a from dual
        union all
      select '4' a from dual
        union all
      select '5' a from dual))
where rn in (
SELECT     TRUNC (DBMS_RANDOM.VALUE (1, cnt + 1))
      FROM DUAL
CONNECT BY ROWNUM < = 3)

Почему каждый раз выводит разное количество строк ?
Elic
Дата: 23.11.2009 14:17:04
razliv
Почему каждый раз выводит разное количество строк ?
Коррелированный подзапрос выполняется для каждой строки.
А чего ты хотел?