Как я могу выбрать 16 записей случайно из диапазона строк в MySQL? - PullRequest
1 голос
/ 21 октября 2009

Я хочу отобразить список из 16 самых популярных элементов в моей базе данных, но я хочу, чтобы этот список каждый раз отличался. Итак, скажем, из 50 лучших загруженных элементов, выбираем 16 случайным образом и возвращаем это в результате. Это возможно только одним запросом?

Ответы [ 3 ]

13 голосов
/ 21 октября 2009
SELECT * 
    FROM (SELECT FROM table ORDER BY download_no DESC LIMIT 50) AS new_table
    ORDER BY RAND() 
    LIMIT 16
2 голосов
/ 21 октября 2009

Вот страница, на которой обсуждается эта проблема: http://akinas.com/pages/en/blog/mysql_random_row/

НТН

0 голосов
/ 21 октября 2009

ЗАКАЗАТЬ ПО RAND ()

...