![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
用JAVA程序向SQL数据库导入Excel表,判断出SQL表中已存在的重复数据,并跳过重复的继续导入其他记录.
我的思路是在程序读取到Excel表的‘IdNumber’这一字段时,以其为唯一关键字段来写一条查询语句,查询数据库中重复的数据,然后不再导入这条重复的,进行下一字段的读取...
我的思路是在程序读取到Excel表的‘IdNumber’这一字段时,以其为唯一关键字段来写一条查询语句,查询数据库中重复的数据,然后不再导入这条重复的,进行下一字段的读取和导入。
自己试着写的,但是好像不对。
select count(0) as zs from table_c where 关键字段名称=b表的数据值
然后判断 zs的值是否大于0,如果大于0则说明数据库里面有值 展开
自己试着写的,但是好像不对。
select count(0) as zs from table_c where 关键字段名称=b表的数据值
然后判断 zs的值是否大于0,如果大于0则说明数据库里面有值 展开
3个回答
展开全部
select count(*) as zs from table_c where 关键字段名称=b表的数据值
你要的是这个吧?
老实说你每条数据查一次,要是有一百万条数据你想过你要查多久吗?你确定你的服务器扛得住?你可以这样解决:
select 关键字段名称 as zs from table_c
返回的是一个二维数组你可以把它拆开成一维数组,因为他每一行只有一个值,然后再用数组的contains方法判断是否存在,这样效率高很多
你要的是这个吧?
老实说你每条数据查一次,要是有一百万条数据你想过你要查多久吗?你确定你的服务器扛得住?你可以这样解决:
select 关键字段名称 as zs from table_c
返回的是一个二维数组你可以把它拆开成一维数组,因为他每一行只有一个值,然后再用数组的contains方法判断是否存在,这样效率高很多
展开全部
就是这样的啊:
select count(1) as zs from table_c where 关键字段名称 = IdNumber的值;
比如
sql = "select count(1) as zs from table_c where 关键字段名称 ='"+idnumber.值+'"";
select count(1) as zs from table_c where 关键字段名称 = IdNumber的值;
比如
sql = "select count(1) as zs from table_c where 关键字段名称 ='"+idnumber.值+'"";
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
晕啊
你读取一条 查询一次数据库 那得多消耗资源啊
不可取,你在读取xls之前 就先查询一次数据库,将所有数据取出放在一个集合中
然后开始读取xls,每行与上面的集合进行对比,决定是否插入数据
你读取一条 查询一次数据库 那得多消耗资源啊
不可取,你在读取xls之前 就先查询一次数据库,将所有数据取出放在一个集合中
然后开始读取xls,每行与上面的集合进行对比,决定是否插入数据
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询