temtable                     dbtable{                           {
  bsid                       bsid
  score                      name
}                           }我要做的是 一个表格中显示  name  sum(score) 按分数由高到底排序我的sql语句是:
  select temtable.bsid,dbtable.name,sum(temtable.score) from temtable,dbtable where temtable.bsid=dbtable.bsid group by temtable.bsid
可是计算机告诉我 据和函数 group by 不能在这个sql中通过,如果对一个表求和倒是能成功,这是两张表如何处理阿
             解决后 立刻结账 拜托中!!!!!!
 

解决方案 »

  1.   

    select temtable.bsid, sum(temtable.score) from temtable LEFT JOIN dbtable ON temtable.bsid=dbtable.bsid group by temtable.bsid
    dbtable.name, 不能再同时显示了——或者,只能显示其中的一行,min/max
      
      

  2.   

    select temtable.bsid,dbtable.name,sum(temtable.score) from (select * from temtable,dbtable where temtable.bsid=dbtable.bsid) group by temtable.bsid
      

  3.   

    Jamestan(情商蛋蛋) 的sql 程序现实group附近有错误
      

  4.   

    select a.[name],sum(b.score)  from dbtable a,temtable b where a.bsid=b.bsid group by a.[name]
      

  5.   

    select temtable.bsid,dbtable.name,sum(temtable.score) from temtable,dbtable where temtable.bsid=dbtable.bsid group by temtable.bsid,dbtable.name
    你把两个条件temtable.bsid,dbtable.name作为group by。
      

  6.   

    create table t1(bsid varchar(10),score int)
    insert into t1
    select '1',80
    union all
    select '2',63
    union all
    select '1',88
    union all
    select '3',95
    go
    create table t2(bsid varchar(10),[name] varchar(10))
    insert into t2
    select '1','xiao'
    union all
    select '2','shui'
    union all
    select '3','lin'
    goselect t1.bsid,[name],sum(score) score 
    from t1,t2
    where t1.bsid=t2.bsid
    group by t1.bsid,t2.[name]
    order by score desc
    bsid       name       score       
    ---------- ---------- ----------- 
    1          xiao       168
    3          lin        95
    2          shui       63(3 row(s) affected)
    是这个意思吗?