如何将这个SQL更新功能组合成一个?



我想根据来自不同表的球队名称设置两个不同的分数。怎么做呢?

UPDATE match_detail
SET team_score = 2
WHERE match_id LIKE 'MT010' AND 
team_id IN (SELECT team.team_id
FROM team, match_detail
WHERE team.team_id = match_detail.team_id
AND team_name LIKE 'Invictus Gaming');
UPDATE match_detail
SET team_score = 0
WHERE match_id LIKE 'MT010' AND 
team_id IN (SELECT team.team_id
FROM team, match_detail
WHERE team.team_id = match_detail.team_id
AND team_name LIKE 'Vici Gaming');
UPDATE md
SET md.team_score = CASE WHEN t.team_name = 'Invictus Gaming' THEN 2
WHEN t.team_name = 'Vici Gaming'     THEN 0
END
FROM match_detail md 
INNER JOIN team t  ON t.team_id = md.team_id
WHERE md.match_id LIKE 'MT010'
AND t.team_name IN ('Invictus Gaming' , 'Vici Gaming')

最新更新