有三个表分别是table1,table2,table3,表结构一样
如下:
table1
Name Yi Er San
zhan 5 4 1
lisi 3 2 3
wangwu 1 2 1table2
Name Yi Er San
zhan 5 3 1
lisi 6 8 3
wangwu 4 4 1table3
Name Yi Er San
zhan 10 7 2
lisi 9 10 6
wangwu 5 6 2表table3的数据其实就是table1与table2的和(table3.Yi=table1.Yi+table2.Yi)。table3的数据根据table1或者table2的变化而自动更新。求更新的SQl语句怎么写?

解决方案 »

  1.   

    插入表1
    查询出@@identity 自增加列
    然后
    一个UPDATE 表3  set X=表1.X+表2.X from 表1 inner  join 表2 on 表1NAME=表2NAME where id=@identity
    或者
    触发器也行。不一定要用触发器(这东西设计不好少用。)
      

  2.   


    "查询出@@identity 自增加列"----这个神马意思?不懂!
      

  3.   

    表结构一样..可以..把t1  t2表插入到临时表#table然后临时表用  sum(yi),sum(**) group by 然后再把结果插入到t3
      

  4.   

    inserer xx value select @@identity  查询的刚插入数据的主键
      

  5.   

    select a.Name,(a.Yi + b.Yi) as Yi,(a.Er + b.Er) as Er,(a.San + b.San) as San, from table1 as a
    left join table2 as b
    on a.Name = b.Name