用java文件如何去掉excel中的重复数据(如有三列完全相同的数据视为重复输入,重复的数据只保留第一条) 20

publicstaticintBL_CheckRoomMaterialData(Documentdoc,BizContextparam)throwsException{N... public static int BL_CheckRoomMaterialData(Document doc, BizContext param) throws Exception{
Node list = (Node) param.getParaObjectAt(0);
Node result = (Node) param.getParaObjectAt(1);
ArrayList<String> temp = new ArrayList<String>();
ArrayList<String> temp1 = new ArrayList<String>();
ArrayList<String> temp2 = new ArrayList<String>();
int flag = 0;//机房资料是否重复
// 开始循环检测日期格式问题
for(int i=0;i<nl.getLength();i++){
String city = XmlUtil.findNode(nl.item(i), "/CITY").getFirstChild().getNodeValue();
String country_area = XmlUtil.findNode(nl.item(i), "/COUNTRY_AREA").getFirstChild().getNodeValue();
String room_name = XmlUtil.findNode(nl.item(i), "/ROOM_NAME").getFirstChild().getNodeValue();
String room_type = XmlUtil.findNode(nl.item(i), "/ROOM_TYPE").getFirstChild().getNodeValue();
String electric_charge_one = XmlUtil.findNode(nl.item(i), "/ELECTRIC_CHARGE_ONE").getFirstChild().getNodeValue();
String rowNum = XmlUtil.findNode(nl.item(i), "/RowNumber").getFirstChild().getNodeValue();
if("".equals(city.trim())){
el = doc.createElement("errMsg");
text = doc.createTextNode("第"+rowNum+"行数据“所属地市”列不能为空!");
el.appendChild(text);
result.appendChild(el);
}
if("".equals(country_area.trim())){
el = doc.createElement("errMsg");
text = doc.createTextNode("第"+rowNum+"行数据“县/区域”列不能为空!");
el.appendChild(text);
result.appendChild(el);
}
if("".equals(room_name.trim())){
el = doc.createElement("errMsg");
text = doc.createTextNode("第"+rowNum+"行数据“机房名称”列不能为空!");
el.appendChild(text);
result.appendChild(el);
}
else{
//机房资料重复验证
int tempLength = temp.size();
if(tempLength > 0){
for(int j = 0;j < tempLength;j++){
if(city.trim() == temp1.get(j)&&country_area.trim() == temp2.get(j)&&room_name.trim() == temp.get(j)){flag = 1;break;}
}
if(flag == 1){
el = doc.createElement("errMsg");
text = doc.createTextNode("第"+rowNum+"行所属地市为"+city.trim()+" 县/区域为"+country_area.trim()+" 机房名称为"+room_name.trim()+"的机房资料数据有重复!请核实后重新导入!");
el.appendChild(text);
result.appendChild(el);
}
}
temp1.add(city.trim());
temp2.add(country_area.trim());
temp.add(room_name.trim());
}
if("".equals(room_type.trim())){
el = doc.createElement("errMsg");
text = doc.createTextNode("第"+rowNum+"行数据“机房类别”列不能为空!");
el.appendChild(text);
result.appendChild(el);
}
}
return 1;
}

以上是我的代码,但是结果是不对的,求大师帮忙!
重点是机房资料重复验证那里!
展开
 我来答
匿名用户
2013-02-05
展开全部
delete from 表 a where (a.Id,a.seq) in (select Id,seq from 表 group by Id,seq having count(*) > 1) and rowid not in (select min(rowid) from 表 group by Id,seq having count(*)>1)
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bbdb46f
2013-02-02
知道答主
回答量:68
采纳率:0%
帮助的人:15.6万
展开全部
撤销可以的
追问
不明白,可不可以说明白些?非常感谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式