【mysql项目】模拟银行数据合并,一个身份证号可开通多个银行的信用卡的数据

本文介绍了如何处理从不同银行获取的信用卡数据,通过合并与去重操作,将20万条数据整合成18万条不重复的身份证号记录。在CentOS 7.5上使用MySQL 5.7.23数据库,设计了ODS、DW和DM表结构,详细展示了银行表、原始数据表、DW数据表和DM展示表的创建过程,以及存储过程的编写和执行,用于数据整合和去重。
摘要由CSDN通过智能技术生成

需求

拉取过来的数据(比如浦发,兴业,农行等),格式如:

兴业:

手机号,姓名,开通信用卡功能(10万条)

浦发:

手机号,姓名,开通信用卡功能(10万条)

......

 

将上面的数据合并,因为每个身份证号有可能在多家银行开有信用卡,需要将20万条数据,假如这时只有18万不重复身份证号的数据。

数据效果展示

原始数据(黄色底为重复身份证号的数据):

工商银行(共20条)

 

农业银行(共20条)

 

去重后的数据:

此时因为有五个身份证号在两个银行开通了信用卡业务,故该五个身份证在两个表中都存在,去重后剩下35数据,并记录开通的银行业务名称。

 

基础表:

 

备注:对于身份证、手机号和姓名等敏感数据均从网络随机生成,如有雷同纯属巧合。
 

数据存放的环境

系统版本:CentOS 7.5

数据库:MySQL 5.7.23

 

  1. 数据库设计

    1. 设计概述

ODS表为原始数据,数据从客户业务系统拉取,包含中文数据;

DW表去掉中文后的数据,数据从ODS表获取;

DM为展示的数据,即系统最后需求的数据;

T为基础表。

银行表:t_bank

原始数据表:

ods_bankData_gs,ods_bankData_ny,ods_bankData_zg,ods_bankData_js……

DW数据表:

dw_bankData_gs,dw_bankData_ny,dw_bankData_zg,dw_bankData_js……

DM展示表:dm_bankFor

 

    1. 具体设计

#创建数据库

create database dbBank;

/*

需求:

拉取过来的数据(比如浦发,兴业,农行等),格式如:

兴业:

手机号,姓名,开通信用卡功能(10万条)

浦发:

手机号,姓名,开通信用卡功能(10万条)

......

 

将上面的数据合并,因为每个身份证号有可能在多家银行开有信用卡,需要将20万条数据,假如这时只有18万不重复身份证号的数据

*/

 

#################################################

##################    BASE     ##################

#################################################

 

/*银行表:t_bank

序号,代码,银行名,银行简写

bankId

bankCode

bankName

bankAD

*/

create table t_bank(

bankId int primary key auto_increment comment '主键自增',

bankCode varchar(50) comment '银行代码',

bankName varchar(200) not nu
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
ava+SQL信用卡管理系统源代码,MSSQL数据库,比较复杂,新手调试可能会遇到问题,附有Java源代码,仅供学习参考。 Java+SQL信用卡管理系统源代码 (1 folders, 2 files, 1.38 KB, 3.52 MB in total.)         源码 (1 folders, 2 files, 1.38 KB, 3.52 MB in total.)               信用卡管理系统SQL (4 folders, 17 files, 2.21 MB, 3.52 MB in total.)       card.jpx 9.58 KB       card.jpx.local 3.02 KB       card.jpx.local~ 3.02 KB       cardSystem_Data.MDF 1.13 MB       cardSystem_Log.LDF 1.00 MB       hs_err_pid1392.log 7.06 KB       hs_err_pid2360.log 6.88 KB       hs_err_pid2756.log 7.06 KB       hs_err_pid2804.log 7.05 KB       hs_err_pid2932.log 6.88 KB       hs_err_pid3152.log 7.06 KB       hs_err_pid3548.log 7.05 KB       hs_err_pid3856.log 7.06 KB       hs_err_pid512.log 6.88 KB       hs_err_pid748.log 7.05 KB                      bak (1 folders, 2 files, 1.38 KB, 208.28 KB in total.)                        card (0 folders, 67 files, 206.90 KB, 206.90 KB in total.)           cardConnect.java~1~ 1.52 KB           cardConnect.java~2~ 508 bytes           cardConnect.java~3~ 661 bytes           cardConnect.java~4~ 1.01 KB           cardConnect.java~5~ 971 bytes           creditCard.java~1~ 1.53 KB           eventFrame.java~18~ 2.86 KB           eventFrame.java~19~ 3.04 KB           eventFrame.java~20~ 2.98 KB           eventFrame.java~21~ 3.19 KB           eventFrame.java~22~ 3.20 KB           eventFrame.java~23~ 3.20 KB           eventFrame.java~24~ 3.35 KB           eventFrame.java~25~ 3.36 KB           eventFrame.java~26~ 3.36 KB           eventFrame.java~27~ 3.36 KB           getPanel.java~22~ 3.64 KB           getPanel.java~23~ 3.64 KB           getPanel.java~24~ 3.50 KB           getPanel.java~25~ 3.50 KB           getPanel.java~26~ 3.54 KB           getPanel.java~27~ 3.58 KB           getPanel.java~28~ 3.58 KB           getPanel.java~29~ 3.55 KB           getPanel.java~30~ 3.54 KB           getPanel.java~31~ 3.59 KB           loginFrame.java~100~ 6.04 KB           loginFrame.java~101~ 6.29 KB           loginFrame.java~102~ 6.47 KB           loginFrame.java~103~ 6.47 KB           loginFrame.java~104~ 6.64 KB           loginFrame.java~95~ 6.07 KB           loginFrame.java~96~ 6.07 KB           loginFrame.java~97~ 6.07 KB           loginFrame.java~98~ 6.07 KB           loginFrame.java~99~ 6.07 KB                      moveFrameEvent.java~1~ 882 bytes           queryPanel.java~10~ 2.54 KB           queryPanel.java~11~ 2.57 KB           queryPanel.java~12~ 2.58 KB           queryPanel.java~13~ 2.10 KB           queryPanel.java~14~ 2.10 KB           queryPanel.java~15~ 2.08 KB           queryPanel.java~6~ 2.61 KB           queryPanel.java~7~ 2.61 KB           queryPanel.java~8~ 2.61 KB           queryPanel.java~9~ 2.57 KB           staticMessage.java~1~ 1.06 KB           staticMessage.java~2~ 1.08 KB           staticMessage.java~3~ 1.12 KB           staticMessage.java~4~ 1.07 KB           staticMessage.java~5~ 1.07 KB           storePanel.java~15~ 3.43 KB           storePanel.java~16~ 3.43 KB           storePanel.java~17~ 3.43 KB           storePanel.java~18~ 3.52 KB           storePanel.java~19~ 3.52 KB           storePanel.java~20~ 3.47 KB           storePanel.java~21~ 3.52 KB           storePanel.java~22~ 3.52 KB           storePanel.java~23~ 3.49 KB           storePanel.java~24~ 3.53 KB           welcomePanel.java~1~ 1.19 KB           welcomePanel.java~2~ 1.37 KB           welcomePanel.java~3~ 1.47 KB                   classes (2 folders, 2 files, 1.38 KB, 73.03 KB in total.)                         card (0 folders, 27 files, 41.28 KB, 41.28 KB in total.)          cardConnect.class 1.75 KB          creditCard$1.class 714 bytes          creditCard.class 1.16 KB          eventFrame.class 4.17 KB          getPanel$1.class 652 bytes          getPanel$2.class 649 bytes          getPanel$3.class 649 bytes          getPanel.class 4.56 KB          loginFrame$1.class 664 bytes          loginFrame$2.class 618 bytes          loginFrame$3.class 622 bytes          loginFrame$4.class 664 bytes          loginFrame$5.class 618 bytes          loginFrame$6.class 622 bytes          loginFrame$7.class 661 bytes          loginFrame$8.class 661 bytes          loginFrame.class 7.27 KB                    moveFrameEvent.class 1.20 KB          queryPanel.class 2.10 KB          staticMessage.class 1.83 KB          storePanel$1.class 664 bytes          storePanel$2.class 661 bytes          storePanel$3.class 661 bytes          storePanel.class 4.57 KB          welcomePanel.class 1.73 KB                  package cache (0 folders, 3 files, 30.37 KB, 30.37 KB in total.)           card.dep2 28.98 KB                              img (0 folders, 9 files, 1.01 MB, 1.01 MB in total.)         1.jpg 69.44 KB         11.jpg 585.41 KB         img.gif 1.76 KB         l562.png 313.27 KB         log001.gif 24.68 KB         log002.gif 7.21 KB                  Thumbs.db 26.50 KB                src (1 folders, 2 files, 1.38 KB, 29.22 KB in total.)                           card (0 folders, 12 files, 27.84 KB, 27.84 KB in total.)            cardConnect.java 1.14 KB            creditCard.java 1.49 KB            eventFrame.java 3.39 KB            getPanel.java 3.91 KB            loginFrame.java 7.16 KB                        moveFrameEvent.java 917 bytes            queryPanel.java 2.13 KB            staticMessage.java 1.12 KB            storePanel.java 3.85 KB            welcomePanel.java 1.37 KB
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值