我目前TableOne
有一列:ID
。我想添加派生的第二列NumSemesters
,该列应该是第二个表TableOne_ID
中TableTwo
的出现次数。
基本上,NumSemesters
应为TableOne.ID
= TableTwo.Student_ID
的次数。
如何更改第一个表以添加第二列?
在表1中,ID
是主键。
答案 0 :(得分:1)
这样的事情(假设您已经创建了NumSemesters列):
update TableOneset NumSemesters = b.idCount
from TableOne a left join
(select Student_ID, count(Student_ID) as 'idCount' from TableTwo groupby Student_ID ) b on a.ID = b.Student_ID
答案 1 :(得分:0)
我认为你正在寻找类似的东西。
SELECT TableOne.ID, TableTwo.NumSemesters FROM TableOne INNER JOIN (SELECT ID, COUNT(*) AS NumSemesters FROM TableOne GROUP BY ID) as TableTwo ON TableOne.ID = TableTwo.ID
吉姆