Мне нужно изменить этот триггер, чтобы указать на только что обновленный столбец, так что я могу изменить NEW.song_id на ?? Благодаря!Quick MySQL Trigger Update
DROP TRIGGER IF EXISTS `ratings_update`//
CREATE TRIGGER `ratings_update` AFTER UPDATE ON `ratings2`
FOR EACH ROW update SONGS set
rating_sum = rating_sum + NEW.rating,
rating = rating_sum/rating_count
where id = NEW.song_id
//
EDIT VVV
DROP TRIGGER IF EXISTS `ratings_upd`//
CREATE TRIGGER `ratings_upd` AFTER UPDATE ON `ratings2`
FOR EACH ROW update SONGS set
rating_sum = rating_sum + NEW.rating - OLD.rating,
rating_count = rating_count,
rating = rating_sum/rating_count
where id = NEW.song_id
//
Это то, что я придумал для своего запуска, но он бросает мне эту ошибку, когда я запускаю его ..
Что значит «указывать на только что обновленную колонку»? «NEW» ссылается на новую запись после обновления, которая, кажется, то, о чем вы просите, поэтому я не уверен, какой ответ вы ищете. –
Хорошо, я понимаю, но это, если кто-то обновляет свой предыдущий рейтинг, так это их способ получить доступ к их старому рейтингу, который обновился, поэтому я могу рассчитать rating_sum = rating_sum - OLD.rating + NEW.rating ?? Благодарю. –
Ну, похоже, вы ответили на свой вопрос. Не будет 'rating_sum = rating_sum - OLD.rating + NEW.rating' делать то, что вы хотите? –