试试这样我写了个简单的例子:
create table fen(hao varchar(5),days int,moneys float)--对应表1
go
create table jian(hao varchar(3),starday int,endday int)--对应表2
go
然后写入你上面各表的数据
select a.hao,b.hao,moneys from fen a,jian b where a.days>=b.starday and a.days<=b.endday
group by a.days,a.hao,b.hao,moneys order by a.hao
我这里试了一下,可以达到你要的效果

解决方案 »

  1.   

    select A.帐号,min(B.区间),sum(A.金额) from A left outer join B 
    on a.已消费天数<B.区间结束天数 and a.已消费天数>B.区间开始天数
    group by A.帐号
      

  2.   

    TO  zhengkaining (领主):
     不好意思,看了 CrazyFor(Fan)贴子才发现,我对楼主的要求没有看清楚,用我的方法只能列出相对应的区间,而没有把相同区间和相同帐号的相加
    请你改成:
    select a.hao,b.hao,sum(moneys) from fen a,jian b where a.days>=b.starday and a.days<=b.endday
    group by a.hao,b.hao order by a.hao  TO CrazyFor(Fan):
      我试了一下你的方法,好象有问题,你的方法把相同帐号但不同区间的金额也加在一起了。