Я просмотрел в Интернете что-то похожее на то, что я хочу, но оно не выполняется ... помогите пожалуйста
Мои таблицы имеют следующую структуру:
TABLE team
id integer autoincrement primary key,
name varchar,
pointsfavor integer,
pointscontra integer
TABLE game
id integer autoincrement primary key,
team1_id integer,
team2_id integer,
score1 integer, /*score for team1*/
score2 integer /*score for team2*/
У меня есть это заявление об обновлении до сих пор:
UPDATE team
INNER JOIN game g1 ON (team.id = g1.team1_id)
INNER JOIN game g2 ON (team.id = g2.team2_id)
SET pointsfavor = pointsfavor
+ IF(g1.score1 > g1.score2, g1.score1 - g1.score2, 0)
+ IF(g2.score2 > g2.score1, g2.score2 - g2.score1, 0)
, pointscontra = pointscontra
+ IF(g1.score1 < g1.score2, g1.score2 - g1.score1, 0)
+ IF(g2.score2 < g2.score1, g2.score1 - g2.score2, 0)
WHERE g1.id = 1;
Когда я помещаю его в свой sql, он выполняет функцию, но он не изменяет мои поля 'pointsfavor' и 'pointscontra' из команды ... так что, как говорится, затронутые строки (0) ....
Посмотрите:
Вот значения, которые я ввел в игру таблицу (оценка1 и оценка2):
и вот таблица team после того, как я приведу код ... остается неизменным:
Пожалуйста, помогите.