Нормальные прокси для нормальных людей не умеют создавать цепочки. Ищите Илитный Софт :)
Технически, для изготовления цепочки понадобятся или socks-прокси или прокси с поддержкой http-метода CONNECT. Тем более для работы произвольного протокола только такие и подойдут.
bearman, может быть внешний group by t.talk_id не обязателен. А то на дампе получается 3 записи всего.
Но тогда можно получить кучу комментов к одной и той же записи и такой блок на сайте не показывает разнообразия.
и еще на моей версии mysql подзапрос упорно игнорирует индекс. а у вас - планирует перебрать по индексу 39 записей.
а это я сортировку просмотрел. правильно так :
select tc.comment_id,tc.*from bt_talk_comment tcJOIN ( select max(tc.comment_id) g_max_tc_id from bt_talk_comment tc WHERE tc.comment_activity=1 GROUP BY tc.talk_id ORDER BY g_max_tc_id DESC LIMIT 5 ) last_tc ON tc.comment_id=last_tc.g_max_tc_idJOIN bt_talk t ON t.talk_id = tc.talk_idLEFT JOIN bt_user u ON u.user_id = tc.user_id;
я, правда, опасаюсь за подзапрос. что-то он на этих данных вырождается в полный перебор.
Плеер то коробочный и скорее всего без исходников. Кто его переписывать будет?
Попытайтесь считать скачивания файлов анализатором логов.
понятно. чтобы отобрать последний коммент к каждой записи, придется выбирать ид интересующих комментов и уже потом присоединять к ним.
SELECT tc.comment_id, t.talk_id, talk_topic, u.user_email, u.user_nicknamefrom bt_talk_comment tcJOIN ( SELECT MAX(tc.comment_id) g_max_tc_id FROM bt_talk_comment tc WHERE tc.comment_activity=1 GROUP BY tc.talk_id ORDER BY tc.comment_id DESC LIMIT 5 ) last_tc ON tc.comment_id=last_tc.g_max_tc_idJOIN bt_talk t ON tc.talk_id = t.talk_id JOIN bt_user u ON tc.user_id = u.user_id;
кстати, в дампе натуральное НЛО - user_id =3 отсутствует.
Кажется, спутали условие join , попробуйте так :
SELECT tc.comment_id, t.talk_id, talk_topic, u.user_email, u.user_nickname FROM bt_talk_comment tc JOIN bt_talk t ON t.talk_id = tc.talk_id JOIN bt_user u ON u.user_id = t.user_id WHERE tc.comment_activity=1 GROUP BY t.talk_id ORDER BY tc.comment_id DESC LIMIT 5
Если написать перед запросом EXPLAIN, то можно увидеть как отличается метод обработки с LEFT и без. Вот если бы вы в поля прописали бы NOT NULL, то наверное, план выполнения не отличался бы.
нигде нельзя. по крайней мере для вебсайта.
Я заметил, что некоторые использую слово LEFT везде - /ru/forum/403218. В моей практике было еще пару случаев. То есть вы четвертый. Кто вас этому учит?
Обычно метод выполнения когда mysql ожидает null-значения отличается и значительно хуже простого объединения.
Если итог один - переформатирование, стоила ли игра свеч ? Клиент и так теперь знает, что ему нужен постоянный админ.
Зачем вы ПОСТОЯННО используете left join ? много у вас комментариев "от НЛО" ?