员工表(TabUser):
----------------------------
员工 ...  余额 ... 
张三 ...  1000 ...
李四 ...  1500 ...
王五 ...  1200 ...
赵钱 ...  500  ...营业报表(TabBB)
----------------------------
日期        员工   利润 ...
2006-6-29   张三   50   ...
2006-6-29   李四   120  ...
2006-6-29   王五   70   ...我想把利润表里当天的各人产生的利润加到user表里的余额里面,
使得TabUser的结果为:
----------------------------
员工 ...  余额 ... 
张三 ...  1050 ...
李四 ...  1620 ...
王五 ...  1270 ...
赵钱 ...  500  ...SQL怎么写? 存储过程也行。
谢谢

解决方案 »

  1.   

    你这表也不设个code,不是很难的sql啊,自己写啊
      

  2.   

    员工表(TabUser):
    ----------------------------
    员工 ...  余额 ... 
    张三 ...  1000 ...
    李四 ...  1500 ...
    王五 ...  1200 ...
    赵钱 ...  500  ...营业报表(TabBB)
    ----------------------------
    日期        员工   利润 ...
    2006-6-29   张三   50   ...
    2006-6-29   李四   120  ...
    2006-6-29   王五   70   ...---------------------------------------
    select TabUser.员工,TabUser.余额+TabBB.利润 as 余额
    from TabUser,TabBB
    where TabUser.员工=TabBB.员工
    建议
    1、表中字段名用英文
    2、建表时对表设一主键
      

  3.   

    Create table tabuser(员工 varchar(10),余额 int)
    insert tabuser select '张三',1000
    union all select '李四',1500
    union all select '王五',1200
    union all select '赵钱',500
    Go
    -----------------------------
    Create table tabbb(日期 datetime,员工 varchar(10),利润 int)
    insert tabbb select '2006-6-29','张三',50
    union all select '2006-6-29','李四',120
    union all select '2006-6-29','王五',70
    ------------------
    Update A
    Set 余额=(A.余额+B.利润)
    From tabuser A inner join tabbb B
    On A.员工=B.员工
    where 日期=convert(varchar(10),getdate(),120) 
    --结果
    select * from tabuser
      

  4.   

    icefireleaf(一叶飘零) 语句似乎会把赵钱给丢了,它在利润表中没有:)
      

  5.   

    看看liangpei2008(我爱世界杯) 的解答
      

  6.   


    update tabUser 
    set 余额=余额+b.利润
    from tabUser a,TabBB b
    where b.员工=a.员工 and b.日期=convert(varchar(10),getdate(),120)
      

  7.   

    select a.員工,(ISNULL(a.余額,0)+ISNULL(B.利潤,0)) as 余額 
    from TableUser a left join TabBB b on a.員工=b.員工
      

  8.   

    前提條件確定 :TabBB 的員工字段不能有重復的姓名
      

  9.   

    如若员工的利润有多条记录,需要对员工分组对其利润求和.
    update tabUser 
    set 余额=余额+b.利润
    from tabUser a,(select 员工,利润=sum(利润) from TabBB group by 员工) b
    where b.员工=a.员工 and b.日期=convert(varchar(10),getdate(),120)