现有两个表,表一
name point
mzs  10
aa   50
mzs  20
cc   13
aa   20
表二
name  phone
mzs   10000000
aa    20000000
cc    30000000
我现在要得出以下结果
name point phone
aa   70    20000000
mzs  30    10000000
cc   13    30000000
也就是按表1中的name分组求point的和并排序,然后根据表2中的对应信息查询出phone的值.求这样一个SQL语句

解决方案 »

  1.   

    select tb2.name,tb3.point,tb2.phone
    from tb2,(select name,sum(point) as point from tb1 group by name) tb3
    where tb2.name=tb3.name
      

  2.   

    select t2.Name,point=sum(t1.point),t2.phone
    from t1
    inner join t2 on t1.Name=t2.Name
    group by t2.Name,t2.phone
    order by 2
      

  3.   


    SELECT WL_Bill.VipNo,
    SUM(WL_Bill.Deppayment)+SUM(WL_Bill.Depcarriage) AS DEP,
    WL_VIP.VipNO,WL_VIP.UserName 
    FROM WL_VIP inner join WL_Bill ON [WL_Bill].[VipNo] = WL_VIP.VipNO 
    GROUP BY WL_Bill.VipNO,WL_VIP.VipNO,WL_VIP.UserName
    ORDER BY WL_Bill.DEP DESC我要执行的语句是这样的,报错了。
    列名 'DEP' 无效。
      

  4.   


    SELECT WL_Bill.VipNo,
    SUM(WL_Bill.Deppayment)+SUM(WL_Bill.Depcarriage) AS DEP,
    WL_VIP.VipNO,WL_VIP.UserName 
    FROM WL_VIP inner join WL_Bill ON [WL_Bill].[VipNo] = WL_VIP.VipNO 
    GROUP BY WL_Bill.VipNO,WL_VIP.VipNO,WL_VIP.UserName
    ORDER BY SUM(WL_Bill.Deppayment)+SUM(WL_Bill.Depcarriage) DESC