今天在进行项目时,需要修改表里面的字段,而字段相应的值是查询计算得来的。按部就班的写好SQL语句结果却令人失望。。。
纠结了一会终得正解
update tb join tb2 on (tb.关联字段 = tb2.关联字段) set tb.要改变的字段 = tb2.对应的字段
在此把sql练习中的一个小案例写上,帮助大家理解
update score s
join
(select c_id,AVG(s_score) score from score where c_id in (
select c.c_id from course c join teacher t on c.t_id=t.t_id where t.t_name='张三'
) group by c_id) t
on s.c_id=t.c_id
set s.s_score=t.score
看似简单的SQL在运用时却是灵活的。革命尚未成功,同志仍需努力!!!!!