求一条语句,能满足下面的要求
a表字段 qty,odr
b表字段 price,odr
现需求同一个odr下面a.qty和b.price进行相乘,所有得出的积进行和运算谢谢

解决方案 »

  1.   

    select sum(a.qty*b.price) total from a join b on a.odr=b.odr
      

  2.   

    select t.[odr],sum(t.[result]) result from
    (
    select a.[odr],a.[qty]*b.[price] result from [a表] a,[b表] b
    where a.[odr]=b.[odr]
    ) t
    group by t.[odr]
      

  3.   

    实现和你相同的功能,我的代码简单些:
    select a.odr ,sum(qty*price) result from a,b where a.odr=b.odr
    group by a.odr是不是?
      

  4.   

    SELECT SUM(a.Qty * b.Price) FROM a, b WHERE a.Odr = b.Odr
      

  5.   

    哦!谢谢各位!  我已经写好了。
    不过还是碰到一个问题
    我首先是设置了几个变量
    @qty,@price,@sum
    然后
    select @qty=a.qty from a,b where a.odr=b.odr
    select @price=b.price from a,b where a.odr=b.odr
    select @sum=sum(a.qty*b.price) from a,b where a.odr=b.odr
    当我把第1条和第2条查询语句给删除,只保留第3条的时候,测试提示语法错误
    这3条同时存在是,则是OK的
    按道理来说前面两条语句应该是不会影响到第三条的才对吧?
    请教下这是怎么回事
      

  6.   

    declare @qty decimal(9,2),@price decimal(9,2),@sum decimal(9,2)
    --select @qty=a.qty from a,b where a.odr=b.odr
    --select @price=b.price from a,b where a.odr=b.odr
    select @sum=sum(a.qty*b.price) from a,b where a.odr=b.odr
    select @sum
    本地测试ok……
    应该是其他代码的问题……看看标点符号之类的