如何使用另一个表值将sql语句写入新添加的列?
问题描述:
我有表subject
,我添加了一个新列stdCount
。如何使用另一个表值将sql语句写入新添加的列?
有一个叫enrollments
与列student_id
,subject
,year
,marks
另一个表。主要适用于每一个科目,他或她的学生该表中的记录是参加。
现在我需要让学生从enrollments
表计数各单位和更新subject
表的stdCount
列。
我该怎么做?
答
如果主体表中有每科一行,即使被摄体在2年以上提供的,和你想STDCOUNT显示在所有的时间报名参加了所有年份的学生总人数:
update subject s
set stdcount =
(select count(*)
from enrollments e
where e.subject = s.subject)
如果载物台具有每患者每年一行(并具有一年列),以及要显示就读于每个(主题,一年)组合的学生总人数:
update subject s
set stdcount =
(select count(*)
from enrollments e
where e.subject = s.subject
and e.year = s.year)
+0
唉这是工作:)谢谢 – Harshana 2014-09-29 01:51:27
与更新该科目每年的平均学生人数?或者某个特定年份的该科目的学生人数? – 2014-09-29 01:37:39
这是一个可以从样本数据和预期结果中大大受益的问题示例。 – 2014-09-29 01:38:12
不需要任何年份规范... @BrianDeMilia – Harshana 2014-09-29 01:41:35