2014-09-13 48 views
0

我想从一个表(tableCourse)获取'pointsGiven',并将它们添加到一个人当前的'pointsAchieved'在单独的表(tableCoursePerson)中。添加SQL表值来分隔内部连接的表值

我当前的SQL语句如下:

SQL =“UPDATE TCP SET TCP.PointsAchieved = 10 FROM TableCoursePerson AS TBC INNER JOIN tableCourse AS TC ON TCP.PointsId = TC.PointsID WHERE TCP.transactionID =?

目前,这种说法是简单地更新人的指向10时,他们完成了课程。我想从TableCourse表pointsGiven价值和他们在一个SQL语句添加到pointsAchieved在TableCoursePerson表。

提前致谢。

TableCourse 

SessionID PointsGiven 
1   2 
2   7 
5   3 
8   6 


TableCoursePerson 

SessionID PointsAchieved 
1   0 
2   0 
5   0 
8   0 


After the SQL statement has run, the TableCoursePerson table should look like this: 


SessionID PointsAchieved 
1   2 
2   7 
5   3 
8   6 

回答

0

你已经基本完成了所有的工作。只要改变10到相应的列:

UPDATE TCP 
    SET PointsAchieved = TC.PointsGiven 
    FROM TableCoursePerson AS TBC INNER JOIN 
      tableCourse AS TC 
      ON TCP.PointsId = TC.PointsID 
    WHERE TCP.transactionID = ?; 

您可能希望这不是为set

SET PointsAchieved = PointsAchieved + TC.PointsGiven 
+0

完美,谢谢! – FourHundred400 2014-09-13 03:21:01