[求助]求税务业务库实际操作中的一个统计SQL,内详细表结构及示例数据
[求助]求税务业务库实际操作中的一个统计SQL,内详细表结构及示例数据
表结构如下:
1.登记表-存放纳税户基本信息
DJ(ID,MC) PK:ID
2.征收表-存放征收信息
ZS(ID,HYBM,NY,XH,JSE,SL,NSE,JMS)
PK:(ID,HYBM,NY)
-HYBM 行业编码
-NY 征收年月(征收行为一般每月发生一次)
-XH 纳税发生序号(一笔纳税额会分几条记录(主要是分税目)保存)
-JSE 计税额
-SL 税率
-NSE 纳税额
-JMS 减免数
注: ID,HYBM,NY构成联合主键;一个ID(纳税户)可能从事几个行业,就有几个HYBM,NY为征收年月,如200610
3.行业表
HY(HYBM,MC) PK:HYBM
表1. 3.很清楚 不举例了 表2我举一些数据例
ID |HYBM |NY |XH |JSE |SL |NSE |JMS
01 |1001 |200610 |1 |2000 |0.05 |100 |100
01 |1001 |200610 |2 |2000 |0.02 |40 |40
01 |1001 |200610 |3 |40 |0.2 |8 |0
02 |1002 |200610 |1 |5000 |0.05 |250 |0
02 |1002 |200610 |2 |5000 |0.01 |50 |50
02 |1002 |200610 |3 |250 |0.2 |50 |0
01 |1003 |200610 |1 |5000 |0.05 |250 |0
01 |1003 |200610 |2 |250 |0.1 |25 |0
这里我再解释一下:
以01为例子,它有两个行业1001,1003 现在我再以1001行业为例,它在200610发生的一次纳税行为分3条记录(其实是3个税目,序号分别为1,2,3)
3个税目的计税额不一样,计税额×税率就得到NSE,而有的NSE(或者NSE的部分)其实最后被退回了,就是所谓的JMS(减免数)
我最后要查的数据显示格式是这样的
ID |MC(DJ.MC) |MC(HY.MC) |JSE |SJNSE(实际纳税额,为NSE-JMS)
就是DJ.ID=ZS.ID关联 然后ZS.HYBM=HY.HYBM关联
我现在要查的是某个月份 比如200610对某个ID及对应的HYBM 对其JSE取所有改ID及对应某HYBM记录中最大的,并得到实际纳税额 就是SUM(NSE)-SUM(JMS)
具体到ID=01 对
HYBM=1001 JSE=MAX(2000,2000,40)=2000;JSNSE=SUM(100,40,8)-SUM(100,40,0)=8(就是实际缴了8元税)
求满足我以上操作的那个SQL
我在业务库上操作了多次都不行,还总是溢出