有一个表(sbb),列为:纳税人代码(nsr)、销售额(xse)、税额(se)、日期(rq),为许多纳税人缴税记录,并且同一纳税人有多条记录。 
问:如何判断一个纳税人在一个时间段内,销售额增加(或者保持不变)但是税额却降低了。 
    

解决方案 »

  1.   

    相比的时间段吧?
    select a.nrs,a.sxse-b.sxse,a.sse-b.sse
    (select nrs,sum(xse) as sxse,sum(se) as sse from sbb where rq between starttime1 and endtime1 group by nsr ) a,(select nrs,sum(xse) as sxse,sum(se) as sse from sbb where rq between starttime2 and endtime2 group by nsr) b where a.nrs=b.nrs and a.sxse-b.sxse>=0 and a.sse-b.sse<0
      

  2.   

    感谢william3033的sql,但是没有达到判断的目的。可能我的叙述有问题,我再说的稍微清楚一点:这个表中有很多不同纳税人记录,而且同一纳税人有多条记录,比如其中一个纳税人一年有12条缴税记录,如何判断这个纳税人一年的12条记录中的销售额增加(或保持不变),但是税额却减少呢?
    请帮个忙,实在是太挠头了。
      

  3.   

    谢谢各位,我前面的表达还是不准确。具体业务是这样的:申报表中是众多不同纳税人申报记录,每个纳税人每月有一条申报记录。我所要的是筛选出满足这个条件的纳税人:在一个时间段内(可以是一年或半年,这个时间自己设定),该纳税人每个月的申报销售额大于或等于其上个月的申报销售额,但是对应的申报税额却小于其上个月的申报税额,如此循环对比。
    申报表(SBB)结构如下:
    nsr varchar2(20);--纳税人代码
    xse number;--当月申报销售额
    se  number;--当月申报税额
    rq  date;  --申报日期
    恳请再次答复,谢谢。