Добрый день!
Вопрос освещен слабо как в документации, так и на форумах.
Дает ли SQL нормальный выбор случайной записи.
Обычный пример - в таблице N вопросов, нужно выбрать случайным образом X.
Для Postgres работает такое:
SELECT column FROM table
ORDER BY RANDOM()
LIMIT X
Но нигде нашел ответ на такие вопросы.
1. Выбирается X уникальных записей? В них повтора не будет?
2. Выборка идет равномерно?
Или все же стоит перенести выборку на программный код, а из базы вытаскивать определенные записи, которые отобрала программа?
Скорее всего используется ГСЧ
Скорее всего используется ГСЧ работающий в ОС. Насколько я понимаю он довольно хорош.
Повтора в выдаваемых за один запрос записях не будет, если нет повторений в самих записях.
Насчёт равномерности ничего не скажу.
Повтора в выдаваемых за один
Повтора в выдаваемых за один запрос записях не будет
Это самое важное. Значит, будем пользоваться, спасибо!