关于会员表的批量导入

前言:
工会的所有问题,技术是一方面,前期的准备工作才是最繁重的
稍微记录一下步骤

步骤

1.修改部门的编号(这个比较简单)

部门的编号问题

SELECT B."ID" DEPT_ID,A.DEPT_ID NAME,b."NAME" NAME2 from "Sheet1" A LEFT JOIN SYS_P_DEPARTMENT B 
on A.DEPT_ID=B."NAME"

2.修改相关的对应关系

筛选的几个细节:
内容筛选的时候可以用查找关键词的方法
筛选之后的结果可以通过点击列名来进行全选,如果怕选多了可以用shift调整
筛选之后的结果可以用ctrl+enter的方法全部修改
在这里插入图片描述

3.出生日期的问题

用身份证来生成(zj的金点子)
在这里插入图片描述
入会时间,就麻烦了 需要针对不同的情况进行换公式

格式1: 1984.8    1992.07 1983-07
=DATE(MID(A1,1,4),MID(A1,6,2),1)

格式2:1994.7.1
=DATE(MID(A5,1,4),MID(A5,6,1),MID(A5,8,1))

格式3:201607
=DATE(MID(A1647,1,4),MID(A1647,5,2),1)

格式4:19990801格式1:
1999/8/1
=DATE(MID(A1657,1,4),MID(A1657,5,2),MID(A1657,7,2))

格式5:2012年7月 中文也是一个字符
=DATE(MID(A1897,1,4),MID(A1897,6,1),1)

格式6 2014/07/01
直接粘贴就行

4.关于粘贴的问题

粘贴为值和格式
在这里插入图片描述

5.导入

过去我从来没有想到会在这里载,注意几个点
1.无需保存为 csv格式 再导入的时候设置时间为 date 就可以顺利的导入了
2.导出数据的时候 可以只导出数据(有列名和无列名两种)
在这里插入图片描述
3.转储会删除整个表 然后重建一个表 一般用不着
4.从一张表到另一张表

update  a,  b 
set a.title=b.title, a.name=b.name
where a.id=b.id

或者

update student s set city_name = (select name from city where code = s.city_code);

5.从一张表插入另一张表

插入 不存在的记录

 insert into insertTest2
    (id,name)
    select id,name
    from insertTest
    where not exists (select * from insertTest2
    where insertTest2.id=insertTest.id);

insert into insertTest select * from insertTest2;(插入一列)

6 关于批量更新

1.方案一 使用update 直接更新
https://blog.youkuaiyun.com/zhaoshuliok/article/details/70142668

update “bi_trade_info_new” b set b.DEPT_ID=(select h.ID from SYS_P_DEPARTMENT h where b.DEPT_ID=h.name)

2.方案二 使用mysql 的循环进行更新(果然要多读书啊)

最后最后总结一下我的全部过程

1.首先是筛选和替换相关的值
2.然后是用excel 函数转换时间格式
3.将表导入到数据库中 修改部门编号
4.将修改好的表导出 成sql语句 (注意 不是转储 记得带上名字,只导出数据)
5.修改sql语句中的表名然后,再运行
6.可能需要修改一下属性的大小
8.over

切记多备份

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值