- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Miracle, так попробуй то о чём написано выше
Т.е разбей запрос на несколько, главное чтоб SELECT возвращал только один результат и только одно поле
Вот на реальной базе сейчас попробовал (на MySQL-4.0 не сработает, а вот с MySQL-4.1 нормально)
Аналогично и у ТС можно так забубенить (хотя не вижу причин не сделать просто 2 запроса, один селект и один апдейт)
Вот именно. :) Если одним запросом не сделать - тогда уж проще достать данные и закинуть их.
Если запросов много получится - то одной транзакцией (Если innodb). И все дела. :)
update tmp (user_id, user_posts) values ( (select user_id from ...), (select user_posts from ...) );
Такой синтаксис не поддерживается MySQL(не уверен насчет 5.0)
UPDATE `phpbb_users` SET `user_posts` = (SELECT COUNT(`poster_id`) FROM `phpbb_posts` WHERE `phpbb_posts`.`poster_id` = 2) WHERE `phpbb_users`.`user_id` =2;
А так нельзя обновить всех юзеров 1 запросом ;)
REPLACE SELECT спасет отца демократии, я уже писал выше.
Dash, я знаю, просто скопировал из первого сообщения так как пьян был и не смотрел что копирую, мои рабочие запросы (которые в скриптах) выглядят более похожими на то что в последнем сообщении
А так нельзя обновить всех юзеров 1 запросом
Всех нет, а в цикле вполне (именно по этому не понимаю почему нужен один запрос, ведь такая "фишка" нужна далеко не при каждом открытии страницы, я бы даже сказал не каждый день такое пригодится)
Вообщем решение еще не найдено, ни один из вариантов предложеных не сработал.
Спасибо всем кто включился в помощь, если будут еще решения выслушаю. Спокойно моегу это сделать двумя запросами скроптом на пхп, но чет завелся над этим... :)
Еще раз всем спасибо :)
Постарался никого не забыть кто помогал :), помню , помню, что спасибо в постель не пожложишь и в стакан не нальешь :)
ни один из вариантов предложеных не сработал.
если будут еще решения выслушаю.
Предложение выложи сюда задачу чтоб мы её решили, а то ты даёшь куски по которым не понять что ты хочешь... (может ты изобретаешь велосипед и всё давно уже изобретено)
Возможно вы и правы.
Вообщем есть задача пересчитать кол-во собщений пользователей на форуме phpbb, без учета определенных подразделов.
1. мы вычситываем сколько сообщений оставил пользователь исключая не нужные подразделы
2. обновляем записи для пользователя.
Те. начальные установки (дополнение) к моду которые не считае сообщение из определенных подразделов.
Спасибо
REPLACE tmp (user_id, user_posts,nochange)
select a.poster_id, count(a.poster_id),tmp.nochange from phpbb_posts a,tmp
where tmp.user_id=a.poser_id
GROUP BY a.poster_id