@Bronaz77

Как сделать случайную выборку записей?

Всем привет!Кто нибудь может подсказать как правильно составить запрос к базе данных для выборки случайных записей из базы используя WHERE?
Использование RAND с MYSQL не рекомендуется по материалам которые я читал, не могли бы вы простым языком показать как составить верный запрос или скинуть ссылку на материал посвященный данной тематике(все топовые выдачи поисковика уже прочел)
  • Вопрос задан
  • 98 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега MySQL
{PHP, MySql, HTML, JS, CSS} developer
Задача на самом деле нетривиальная, но очень распространенная. Одним из самых "качественных" вариантов решения для стандартной слаборазряжённой базы является выборка максимального и минимального значения первичного автоинкрементного ключа, а затем формирование набора из N случайных чисел между ними средствами языка (пхп, ноды, го, не суть), где N тем больше, чем больше разряженность базы. Далее делается выборка с in, и уже по результатам выборки берется случайная запись из группы полученных. Насколько я помню это самый эффективный и быстрый способ.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
tsklab
@tsklab
Здесь отвечаю на вопросы.
SELECT UUID(), * FROM SomeTable
ORDER BY 1 LIMIT 10
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы