Как выбрать из PostgreSQL БД случайные записи (N штук), но чтобы при последующей выборке при том же условии — список не изменился?

Есть таблица с записями. У записей в этой же таблице есть дочерние записи, находятся они по PARENT_ID родителя.
Вот необходимо выбирать "случайные дочерние записи" в количестве допустим 10-ти штук (всегда меньше, чем всего дочерних записей). записи не должны быть по порядку. Необходимо в хаотичном порядке.
Но постоянно при следующем вызове этого запроса необходимо, чтобы список записей не изменялся.

Есть ли какое решение с использованием ТОЛЬКО SQL?
  • Вопрос задан
  • 103 просмотра
Пригласить эксперта
Ответы на вопрос 1
@res2001
Developer, ex-admin
Вычисляете общее количество записей (N), которые можно выбрать.
Генерируете 10 случайных чисел в диапазоне от 1 до N.
Выбираете 10 записей из верхнего запроса, у которых row_id равен случайным числам.
ID выбранных записей нужно куда-то сохранить, чтоб в следующий раз их использовать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы