Помощь по скриптам | база или вывод
TuT (25.02.2020 в 15:58)
Что ты именно хочешь? Можно по точнее. Тогда уже будет ясно как реализовать твой вопрос. По сути лучше в SQL решить, но опять, зависит от задачи. А точной задачи не ясно
Что ты именно хочешь? Можно по точнее. Тогда уже будет ясно как реализовать твой вопрос. По сути лучше в SQL решить, но опять, зависит от задачи. А точной задачи не ясно
Реализовать вывод случайных 10 строк из 50.
Сейчас через базу выводится, но нагрузка когда этим занимаются 5-10 человек высокая. Вот я и спрашиваю, через rand быстрее ли будет и как сделать
Baymax (25.02.2020 в 16:48)
Реализовать вывод случайных 10 строк из 50.Сейчас через базу выводится, но нагрузка когда этим занимаются 5-10 человек высокая. Вот я и спрашиваю, через rand быстрее ли будет и как сделать
Реализовать вывод случайных 10 строк из 50.Сейчас через базу выводится, но нагрузка когда этим занимаются 5-10 человек высокая. Вот я и спрашиваю, через rand быстрее ли будет и как сделать
Скинь код, как сейчас реализовано.
TuT (25.02.2020 в 17:30)
Скинь код, как сейчас реализовано.
Скинь код, как сейчас реализовано.
while ($x<$count1)
{
$x++;
$in=mysql_fetch_array(mysql_query("SELECT * FROM `stat` WHERE `status` = '1' AND `id` != '14' AND `level` < '2' ORDER BY RAND() LIMIT 1"));
}
Вот вариант.
Baymax (25.02.2020 в 18:31)
while ($x<$count1){$x++; $in=mysql_fetch_array(mysql_query("SELECT * FROM `stat` WHERE `status` = '1' AND `id` != '14' AND `level` < '2' ORDER BY RAND() LIMIT 1"));}Вот вариант.
while ($x<$count1){$x++; $in=mysql_fetch_array(mysql_query("SELECT * FROM `stat` WHERE `status` = '1' AND `id` != '14' AND `level` < '2' ORDER BY RAND() LIMIT 1"));}Вот вариант.
Тык естественно будет нагрузка, запрос то в цикле. С ПК буду чуть позже, набросаю пример.
Baymax,
Чет я затупил сначала
php
$in = (mysql_query("SELECT * FROM `stat` WHERE `status` = '1' AND `id` != '14' AND `level` < '2' ORDER BY RAND() LIMIT 5"));
while($post = mysql_fetch_array($in)){
echo $post['id'].'</br>';
}Чет я затупил сначала
TuT (25.02.2020 в 23:12)
Baymax,
Чет я затупил сначала
Baymax,
php
$in = (mysql_query("SELECT * FROM `stat` WHERE `status` = '1' AND `id` != '14' AND `level` < '2' ORDER BY RAND() LIMIT 5"));
while($post = mysql_fetch_array($in)){
echo $post['id'].'</br>';
}Чет я затупил сначала
это намного быстрее чем через цикл?
Baymax (26.02.2020 в 02:27)
это намного быстрее чем через цикл?
это намного быстрее чем через цикл?
Идет 1 обращение к БД и вывод 5 элементов, так как стоит LIMIT 5. У тебя же идет 5 обращений к БД (ну или сколько ты там прогоняешь, за раз).
Так не делают, как говорит Avenax За вложенный запрос в цикл, руки под топор
TuT (26.02.2020 в 02:41)
Идет 1 обращение к БД и вывод 5 элементов, так как стоит LIMIT 5. У тебя же идет 5 обращений к БД (ну или сколько ты там прогоняешь, за раз).Так не делают, как говорит Avenax За вложенный запрос в цикл, руки под топор
Идет 1 обращение к БД и вывод 5 элементов, так как стоит LIMIT 5. У тебя же идет 5 обращений к БД (ну или сколько ты там прогоняешь, за раз).Так не делают, как говорит Avenax За вложенный запрос в цикл, руки под топор
спасибо) а то я твой вариант давно ставил и переделал на цикл неск месяцев назад
mysql_fetch_assoc лучше было бы (mysql_fetch_array зависит от настройки подключения)
________
посл. ред. 26.02.2020 в 03:23; всего 1 раз(а); by Wins
________
посл. ред. 26.02.2020 в 03:23; всего 1 раз(а); by Wins
Baymax, Если хочешь скорость то лучше нагрузку на сервер кидать чем на бд! Так что php поверь парится потом не будешь
Стр.: 1, 2