На данный вопрос уже ответили:
Есть вот такой вот простой код
$ids = rand(1, 500000);
SELECT * FROM questions WHERE id = '$ids' ORDER BY date DESC limit 40
У меня выводит лишь одну случайную запись. Как мне вывести 40 случайных записей? Знаю про rand() в mysql, но такой запрос выполняется секунд 10-15.
Решил сам:
$maxx=20000; // -- числа будут от 1 до $maxx
$maxn=40; // -- всего $maxn чисел в массиве
$r=""; // эту строку можно удалить
$x=array(); // здесь будет массив наших чисел
$tmp=array(); // временный массив
for ($i=0; $i<$maxn; $i++) {
do {
$a=rand(1,$maxx);
} while(isset($tmp[$a]));
$tmp[$a]=1;
$x[]=$a;
$r.="$a,"; // эту строку можно удалить
}
unset($tmp);
$r=substr($r,0,strlen($r)-1).""; // эту строку можно удалить
$query = "SELECT * FROM questions WHERE id in ($r) ORDER BY date DESC limit 40";
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Вечер добрыйНе могу понять почему при отправке текста на стену в группу через метод wall
Ребят, прохожу уроки по WordPress, два дня пытаюсь найти ошибку не могуСтили не подключаются
Необходимо результат запроса LIKE отсортировать в порядке нахождения по столбцам
Загорелся сделать морской бой на с++ чисто для себя (с++ еще осваиваю)Сделал так чтоб программа ставила метку на нужных координатах