2017-01-03 2 views
0

Мне нужно создать столбец случайных выборок на основе столбца в той же таблице в разделе по COLUMNA, COLUMNB и COLUMNC. Мне нужно использовать столбец NO_OF_SAMPLE, чтобы определить количество записей, для которых мне нужен образец.Создайте случайный столбец на основе значения из столбца в той же таблице

sample data

+4

Как хаотичность образца относятся к 3 колонки? Если он случайный, он не будет основываться ни на одной из данных в таблице. Если это не случайность, то каковы правила определения того, почему три столбца влияют на столбец «RANDOMSAMPLE»? – Ben

+1

Неясно, откуда источник значений в столбце случайных выборок. Можете ли вы объяснить свой ожидаемый результат? –

+0

Также отправьте данные в виде отформатированного текста, [не скриншоты] (http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-images-of-code-on-so-when -asking-а-вопрос/285557 # 285557). – Aleksej

ответ

0

У вас есть столбец с именем no_of_sample, который, кажется, чтобы указать количество X/Y комбинации, которые вы хотите.

Если это так, то вы можете сделать то, что вы хотите с row_number() и dbms_random.value():

select t.* 
from (select t.*, 
      max(no_of_sample) over (partition by columnA, columnB) as max_num, 
      row_number() over (partition by columnA, columnB order by dbms_random.value()) as seqnum 
     from t 
    ) t 
where seqnum <= max_num; 
+0

проверит это с фактическими данными. –

Смежные вопросы