日期:2014-05-17  浏览次数:20449 次

求一联表查询SQL语句
表A
id  sl  data
1   1   2013-05-22
2   1   2013-05-22
1   1   2013-05-23
3   1   2013-05-21

表B
id  name
1   tt
2   bb

我查询2013-05-22 至 2013-05-23
想要得到的数据如下
id  sl  name
1   2   tt
2   1   bb
就是相同ID的sl累加,但又要调用B表的这个ID的name名称

SELECT  a.Id,a.sl,b.name FROM a,b
where a.DATA between '2013-05-22' and '2013-05-23'  and b.Id=a.id
如上,会显示三条数据
id   sl  name
1    1   tt
2    1   bb
1    1   tt
怎么做可以同ID的让它合计SL
SQL

------解决方案--------------------
 select b.id,a.sl,b.name from b ,
(select a.id,sum(a.sl) sl from a group by a.id) a
where b.id=a.id
------解决方案--------------------

楼上正解