有一张公司招聘信息表,上面许多公司招聘的信息,如何清洗工作经验,将1年,1.5年,1-3年都变成1-5年?经验不限的变为1年以内?
你的这个表就有问题,数据重复,另外对于将1年,1.5年,1-3年都变成1-5年,经验不限的变为1年以内,其实你可以写一个程序,就是将这个表的数据查询,然后通过java过滤,将第一位大于等于1小于5的一律按1-5年,小于1的按经验不限,将新的数据导入新的表中完成数据清洗
具体思路如下:
1.java配置好jdbc连接数据库,这里不管你是用原生也好还是使用框架也罢,都无所谓,按简单的来就是使用springboot+Mybatis框架
写一个查询所有的方法和一个添加数据的方法(查询的是旧表的数据,添加是将过滤后的数据添加到新表里面去)
2.查询出所有的数据肯定要放到list集合里面去,然后for循环遍历,里面写if条件进行过滤,将新的数据存放到新的集合Set里面(set集合具有元素不相同,可达到去重效果)
3.遍历集合set,每次遍历一条数据就调用一次添加的方法
4.最后完成数据清洗,新的数据就存放到新的表里面了
update table set 字段 = ‘1-5年’ where 字段 in ('1年', '1.5年', '1-3年');
update table set 字段 = ‘1年以内’ where 字段 in ('经验不限');