Я пытаюсь сгенерировать случайное целое число для каждой строки, выбранной в качестве таймера от 1 до 60.
SELECT downloads.date, products.*, (FLOOR(1 + RAND() * 60)) AS timer
Я искал и продолжаю подходить к этой функции FLOOR, как выбрать случайное целое число в диапазоне. Это дает мне 1 для каждого ряда.
Чего мне не хватает?
Я нахожусь на mysql 5.0.75
Вот и остальная часть запроса, я верю, что это может быть проблема с вложением
SELECT *
FROM (
SELECT downloads.date, products.*, FLOOR(1 + (RAND() * 60)) AS randomtimer,
(
SELECT COUNT( * )
FROM distros
WHERE distros.product_id = products.product_id
) AS distro_count,
(SELECT COUNT(*) FROM downloads WHERE downloads.product_id = products.product_id) AS true_downloads
FROM downloads
INNER JOIN products ON downloads.product_id = downloads.product_id
) AS count_table
WHERE count_table.distro_count > 0
AND count_table.active = 1
ORDER BY count_table.randomtimer , count_table.date DESC LIMIT 10