Excel数据转换成SQL

1.收到一个数据表的excel,需要通过excel中的数据到mysql中查询数据相关的数据。

Excel数据转换成SQL_第1张图片

2.处理数据,这里仅需要使用测试ID即可,只拿这一列数据

在idea中建一个test.txt,把需要用到的列数据copy进去,去掉表头,win+r调出替换功能

Excel数据转换成SQL_第2张图片

 这部分数据,要做in查询,所以需要处理数据为(12,34,56,78)这种样式,使用正则进行匹配,先加,

Excel数据转换成SQL_第3张图片

replace all即可

然后是把所有数据放到一行,使用\s*\n进行匹配

Excel数据转换成SQL_第4张图片

然后把末尾的逗号去掉就可以用了

SELECT * FROM main_test t,main_user u
WHERE t.id IN (12,34,56,78) and t.user_id = u.id;

3.多数行匹配

copy需要使用的列数据到txt中,写入正则匹配,然后替换,替换的取值通过$匹配

正则:(^\d*)    (.*)

SQL:SELECT * FROM main_test t,main_user u WHERE t.id = $1 and u.`name` = '$2';

 这里可以灵活运用正则表达式,玩出各种花样

哎,被现实打击了,再补充一部分:

三排数据的操作

Excel数据转换成SQL_第5张图片

 (^\d*)(\s)(\d*)(\s)(.*)

这是正则表达式,$1,$3,$5是需要用的数据。其他是空格

你可能感兴趣的:(业务,sql,数据库,database)