SQL批量更新及 更新后依据更新数据内容插入到另一张表的存储过程

SQL批量更新及 更新后根据更新数据内容插入到另一张表的存储过程
问题表
id       会员ID      状态         分值          发布时间
1              3           1                  10            2015-1-10 12:11:22
2               2            3                   20           2015-1-19 12:11:22
3               1            2                   15           2015-1-10 15:11:22
4               6             3                   16           2015-1-5 12:11:22
6                7           3                   20           2015-1-8 19:11:22
..................

会员表
ID    用户名     密码         帐户分值
1         #             #                  10
2          #             #                 15
3          #             #                  10
...................

记录表

ID            UID             分数        时间
1               1                  10          2015-1-10
....................

我想实现这样的存储过程。

批量更新 问题表 状态值为3且时间超过10天记录。更新状态为4,
同时获取问题表的分值,如果分值大于0,根据问题表的关联会员ID,更新会员表的分数,使其增加
然后再插入一条记录。到记录表里。记录什么时间会员ID增加了多少分数


总的功能就相当于一个问题回答系统,会员发布一个问题。如果有人回复他了,而他10天内进行操作。系统自动将他的问题状态改为已处理完毕。也就是着问题表中的状态4
在系统自动更新为已处理完毕的时候。那会给发布问题的人的帐户上加这个问题的分数,且同时记录一条他获取分数和记录。存在记录这个表里。

不知道我说的是否明了……请大神帮忙
------解决思路----------------------
UPDATE 会员表
   SET 帐户分值 = 帐户分值 + t.分值
  FROM 会员表,
       (
            SELECT 会员ID, SUM(分值) 分值
              FROM 问题表
             WHERE DateDiff(day,发布时间,GetDate())>10
               AND 状态 = 3
          GROUP BY 会员ID
       ) t
 WHERE 会员表.ID = t.会员ID

INSERT INTO 记录表 (UID,分数,时间)
SELECT 会员ID,分值,GetDate()
  FROM (
            SELECT 会员ID, SUM(分值) 分值
              FROM 问题表
             WHERE DateDiff(day,发布时间,GetDate())>10
               AND 状态 = 3
          GROUP BY 会员ID
       ) t

UPDATE 问题表
   SET 状态 = 4
 WHERE DateDiff(day,发布时间,GetDate())>10
   AND 状态 = 3