объединить 3 запроса UPDATE MySQL

156
23 апреля 2022, 14:30

Доброго времени суток!

Нужно объединить 3 запроса UPDATE но они с подвохом... дело в том что мне надо обновить данные у 2х пользователей в одной таблице по их id...

UPDATE posts, users_statistic 
/* Тут нужно увеличить просмотр на 1... тут все ок */
SET posts.views = posts.views + 1, 
/* Тут нужно увеличить просмотр у автора поста пусть будет id = 10 */
users_statistic.views = users_statistic.views + 1, 
/* Тут нужно увеличить просмотр у того кто смотрит пост пусть будет id = 15 */
users_statistic.your_views = users_statistic.your_views + 1
WHERE posts.id = 1 AND 
/* Как тут указать что для одной строки нужно увеличение у автора а в другом у того кто смотрит */

Вот 3 отдельных запроса:

UPDATE posts SET views = views + 1 WHERE id=?;
UPDATE users_statistic SET views = views + 1 WHERE id=?;
UPDATE users_statistic SET your_views = your_views + 1 WHERE id=?;
  • в первом передается id поста
  • во втором id автора
  • в третьем id того кто просматривал

Таблица выглядит таким образом :

Буду очень благодарен за помощь!

READ ALSO
Помощь с запросом MySql

Помощь с запросом MySql

У меня База данных в которой миллион строк (в каждой по одному слову), есть список (вне базы данных) который состоит из тысячи строк (в каждой...

128
Получение оповещения о новых данных Android?

Получение оповещения о новых данных Android?

Ситуация следующая Уже есть готовый продукт и админка, которые не зависят от меня и вносят изменения в БД (MYSQL) для ясности примера предположим,...

231
Помогите исправить ошибку в sql запросе

Помогите исправить ошибку в sql запросе

помогите исправить ошибку в данном sql запросе

229