У меня есть следующий тип SQL:
UPDATE photo AS f
LEFT JOIN car AS c
ON f.car_id=c.car_id
SET f.photo_status=1
, c.photo_count=c.photo_count+1
WHERE f.photo_id IN ($ids)
В основном две таблицы (car
& photo
) связаны между собой. Список в $ ids содержит уникальные идентификаторы фотографий, такие как (34, 87, 98, 12). С помощью запроса я устанавливаю статус каждой фотографии в этом списке на «1» в таблице photo
и одновременно увеличиваю количество фотографий в таблице car
для автомобиля под рукой.
Это работает, но есть одна загвоздка: поскольку список может содержать несколько идентификаторов фотографий, относящихся к одной и той же машине, количество фотографий увеличивается только один раз. Если бы в списке было 10 фотографий, связанных с той же машиной, photo_count стал бы 1 .... тогда как я хотел бы увеличить его до 10.
Есть ли способ сделать приращение для каждой фотографии отдельно через объединение, в отличие от MySQL, переосмысливающего это для меня?
Надеюсь, вышесказанное имеет смысл. Спасибо.