用这个试试
1.在SQL server中可run,mySQL..粉久不用了..你要试试,改成mySQL可用的语法
2.学号要不要加引号,看你的资料型别,我只给你可以跑的"样式"
3.记得最後要加上where条件,不然其他calculate->liberal_grade的值都会变NULL或0
====================================================================
update calculate set liberal_grade= case stu_id
when '93101163'
then
(SELECT avg(grade) FROM JoinClass j1
JOIN calculate c1 ON j1.stu_id = c1.stu_id
WHERE course_id
LIKE "%l" OR course_id
LIKE "%a" OR course_id
LIKE "%n" OR course_id
LIKE "%p" AND j1.stu_id ='93101163')
end
where stu_id='93101163'
==============================================================
※ 引述《dcplay01 (dcplay)》之铭言:
: DBMS MySQL Database Version 4.0.16
: phpMyAdmin Database Manager Version 2.5.4
: SELECT avg(grade)
: FROM JoinClass j1
: JOIN calculate c1 ON j1.stu_id = c1.stu_id
<恕删>
※ 编辑: jameswiki 来自: 220.134.154.61 (01/24 05:39)