【求助】和数据查重有关。

hllf6031 2011-03-02 09:59:49
关于物料管理的系统,由于物料没有唯一性的标识,所以客户设置了20多个字段来描述物料。
因此,为了避免数据冗余,客户要求在数据导入以及录入,要根据20多个字段计算表内是否有和输入的信息相似度较高的数据,有的话则提示用户,要求其确认是否同一物资。
如果是的话,则只进行数量上的累计,不产生新的一条物料信息;如果不是,则产生一条新的物料信息。
应该怎么做,如何计算相似度?
...全文
150 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lcaminy 2012-02-02
  • 打赏
  • 举报
回复
数据多了逐个字段会很慢很慢很慢,哎。
jackey_ctdw 2011-03-04
  • 打赏
  • 举报
回复
搞个标示列吧
hllf6031 2011-03-04
  • 打赏
  • 举报
回复
不能是like,这么多字段,再使用like的话就无法做了。
想了个办法。
数据总共有26个属性字段,必填字段6个。这6个字段属于管理层关心的属性,其他字段根据不同的部门而尤其规定是否为必填。只能把所有的必填字段(比如10个)进行比对,发现数据库内有某条数据和输入的数据的必填项一摸一样就判定为同一物料。然后逐次减少比对的字段(如:9,8,7。。。)进行计算,然后提取出出现率较高的数据,由用户自己判定。
这么做如何?
血战31天 2011-03-02
  • 打赏
  • 举报
回复
还是搞个唯一标识吧 至少后台搞一个
handong890 2011-03-02
  • 打赏
  • 举报
回复
meger into ?
zhuming12345 2011-03-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wp500 的回复:]
哎。。。。叹息一声。不好弄啊。
重新分析一下,哪几个属性可以确定一条记录。这些属性就是联合主键。然后再根据主键来判断吧。最好再加一个字段来生成主键
[/Quote]
赞同!
strike2368168 2011-03-02
  • 打赏
  • 举报
回复
估计挺麻烦。
可以建一个对比表,将每个属性的不同项目存入其中,排个相似度顺序什么的。
完了再写算法进行比对,得出相似度。
G_beginner 2011-03-02
  • 打赏
  • 举报
回复
LZ也许可以用余弦算法来试试,在推荐领域用来计算相似度的
王铎开 2011-03-02
  • 打赏
  • 举报
回复
要相似到什么程度。 like%%嘛。
wp500 2011-03-02
  • 打赏
  • 举报
回复
哎。。。。叹息一声。不好弄啊。
重新分析一下,哪几个属性可以确定一条记录。这些属性就是联合主键。然后再根据主键来判断吧。最好再加一个字段来生成主键
a312983516 2011-03-02
  • 打赏
  • 举报
回复
不好弄 麻烦死

LZ节哀

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧