У меня есть таблица ABC, которая имеет 10M + строк.Он содержит customer_id, адрес электронной почты, счет.Я создал запрос, который случайным образом выбирает 1000 номеров и считает их по группам.Выходные данные для этого запроса приведены ниже.
RANDOM_GROUP FREQ
1 71
2 45
3 35
4 45
5 53
6 40
7 65
8 54
9 68
10 59
11 465
Это мой запрос:
select random_group, count(random_group) as freq
from
(select case when rand_num >= 0 and rand_num<=0.053 then 1
when rand_num > 0.053 and rand_num <= 0.097 then 2
when rand_num > 0.097 and rand_num <= 0.142 then 3
when rand_num > 0.142 and rand_num <= 0.189 then 4
when rand_num > 0.189 and rand_num <= 0.234 then 5
when rand_num > 0.234 and rand_num <= 0.281 then 6
when rand_num > 0.281 and rand_num <= 0.341 then 7
when rand_num > 0.341 and rand_num <= 0.399 then 8
when rand_num > 0.399 and rand_num <= 0.458 then 9
when rand_num > 0.458 and rand_num <= 0.515 then 10
when rand_num > 0.515 and rand_num <= 1.000 then 11 end
random_group
from
(SELECT dbms_random.value(0,1) AS rand_num,
rownum as at_row_num
FROM ABC
WHERE rownum <= 1000))
group by random_group
order by random_group
;
Можно ли повторить этот запрос N раз, чтобы каждый вывод генерировал различное число?Должен ли я использовать петлю?Я не хочу запускать N раз вручную, чтобы получить разные результаты ... Спасибо!