Я прочитал несколько альтернатив функции MySQL ORDER BY RAND()
, но большинство альтернатив применимо только к тому, где требуется один случайный результат.
Кто-нибудь знает, как оптимизировать запрос, который возвращает несколько случайных результатов, например:
SELECT u.id,
p.photo
FROM users u, profiles p
WHERE p.memberid = u.id
AND p.photo != ''
AND (u.ownership=1 OR u.stamp=1)
ORDER BY RAND()
LIMIT 18