Генерация случайной строки в PL / SQL (оракул 12c) - PullRequest
0 голосов
/ 09 апреля 2019

Я пытаюсь сгенерировать случайную строку, используя PL / SQL только с двумя фиксированными словами.Это возможно?

1 Ответ

1 голос
/ 09 апреля 2019

Это то, что вы ищете?

SQL> with
  2  -- two fixed words
  3  test as
  4    (select 'fixed words' col from dual),
  5  -- split them to rows
  6  inter as
  7    (select level lvl, regexp_substr(col, '.', 1, level) let
  8     from test
  9     connect by level <= length(col)
 10    )
 11  -- aggregate them back, randomly
 12  select listagg(let, '') within group (order by dbms_random.value(1, max_lvl)) result
 13  from inter
 14  join (select max(lvl) max_lvl from inter) on 1 = 1;

RESULT
--------------------------------------------------------------------------------
reiosdwxf d

SQL> /

RESULT
--------------------------------------------------------------------------------
fe ixoddrws

SQL> /

RESULT
--------------------------------------------------------------------------------
 wdxeorsdfi

SQL>
...