Как уже упоминалось в ответе @JonHeller, лучшим решением остается блок кода pl / sql, поскольку он позволяет избежать полного сканирования таблицы. Вот мое предложение:

я есть таблица, которая имеет около 1000 строк. Мне нужно обновить столбец («X») в таблице до «Y» для n рядов ramdom. Для этого я могу иметь следующий запрос

update xyz set X='Y' when m in (
'SELECT m FROM (SELECT m
FROM xyz
order by dbms_random.value
) RNDM 
where rownum < n+1);

Есть ли другой эффективный способ написать этот запрос. Таблица не имеет индекса. Пожалуйста помоги?

Ответы на вопрос(3)

Ваш ответ на вопрос