学习进度1
一、 数据说明:
1、数据组成
(1)增值税发票数据,文件名zzsfp
(2)发票对应货物明细数据,文件名zzsfp_hwmx
(3)企业信息,文件名nsrxx
2、数据字段说明
(1)zzsfp表字典
字段名称 |
字段含义 |
数据类型 |
备注 |
fp_nid |
发票id |
String |
发票唯一标识 |
xf_id |
销方识别号 |
String |
企业唯一身份标识 |
gf_id |
购方识别号 |
String |
企业唯一身份标识 |
je |
金额 |
Double |
|
se |
税额 |
Double |
|
jshj |
价税合计 |
Double |
|
kpyf |
开票月份 |
String |
|
kprq |
开票日期 |
String |
|
zfbz |
作废标志 |
String |
‘Y’代表作废 |
zzsfp表内容($ less zzsfp)
(2)zzsfp_hwmx表
字段名称 |
字段含义 |
数据类型 |
备注 |
fp_nid |
发票id |
String |
发票唯一标识 |
date_key |
开票月份 |
String |
|
hwmc |
货物名称 |
String |
|
ggxh |
规格型号 |
String |
|
dw |
单位 |
String |
|
sl |
数量 |
Double |
|
dj |
单价 |
Double |
|
je |
金额 |
Double |
|
se |
税额 |
Double |
|
spbm |
商品编码 |
String |
|
zzsfp_hwmx表内容($ less zzsfp_hwmx)
(3)nsrxx表
字段名称 |
字段含义 |
数据类型 |
备注 |
hydm |
行业代码 |
String |
|
nsr_id |
纳税人id |
String |
企业唯一身份标识 |
djzclx_dm |
登记注册类型代码 |
String |
网上可查阅相关代码含义 |
kydjrq |
开业登记日期 |
String |
|
xgrq |
修改日期 |
String |
给企业打标签的时间 |
label |
标签 |
String |
‘0’代表正常企业 ‘1’代表问题企业 |
nsrxx表内容($ less nsrxx)
3、关联数据的必要说明
(1)zzsfp表可通过fp_nid进行关联
(2)zzsfp表可通过xf_id或者gf_id与nsrxx中的nsr_id进行关联,分离出销项发票表和进项发票表
二、 测试要求:
1、数据导入:
要求将三个样表文件中的数据导入HIVE数据仓库中。
2、数据分析:
企业异常的判断标准参考:
企业增值税发票进项与出项严重不符即出现只出不进或者只进不出的企业;
(1)、将zzsfp、zzsfp_hwmx、nsrxx三个表根据连接在一起,zzsfp和zzsfp_hwmx考fp_nid连接,连接好之后和nsrxx连接,靠xf_id进行连接。
关联语句:select zzsfp.fp_nid,zzsfp.xf_id,zzsfp.gf_id,zzsfp.je,zzsfp_hwmx.hwmc,zzsfp_hwmx.je,nsrxx.nsr_id join zzsfp on zzsfp_hwmx on zzsfp.fp_nid = zzsfp_hwmx.fp_nid join nsrxx on zzsfp.xs_id = nsrxx.nsr_id;
(2)、处理的是金额和货物明细中相同fp_nid中相同id的货物累加在一起的差值,进行排序
(3)、在第二步基础上筛选只进不出的或是只出不进的,只出不进或者只进不出的je就 会等于出和进的差价
sql语句:select * from nsrxx where je = ljje;
(4)、前期的标准均是定死的会筛选出大概4600家厂家,最后再根据中位数进行筛选。
3、处理结果入库:
将上述异常标准的结果分别汇总统计,并将结果数据导出到mySQL数据库中。
最终结果参考提示:
最终给出的数据情况
企业总数:33,829
非正常企业总数:318