SQL中的重复记录

阿罗克·乔杜里

通过计算表行的哈希码检查重复记录:

我实际上是通过用户界面将excel文件通过用户界面上传到mysql数据库中,然后才实际插入记录,我必须对照主表中已存在的记录来标识重复记录(记录数可以为2500000),并且我必须尽快完成。

我对此的解决方案是我在表中添加了另一个字段,即哈希码,并且在插入记录时,我将为每一行计算哈希码,在检查重复的行时,我将仅匹配哈希码字段。哈希码存在于主表中,则记录重复,否则唯一。

还有其他方法可以更快地执行此操作,因为我不知道mysql数据库功能

谢谢!

本沃斯

a)如果您想坚持使用哈希码,请使用类似

 SELECT sha256(CONCAT(col1, "-", col2, "-", col3)) FROM ...

而不是MD5()-最近我在这里遇到了一些冲突。不要忘记在新列上添加索引。

b)为了您的目的,简单

 SELECT col1, col2, col3, Count(*) 
 FROM table 
 GROUP BY 1,2,3 HAVING Count(*) > 1 

可能就是您想要的。这也将为您提供100%的重复,并且您不必添加新的哈希列并进行检查...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

消除SQL中的重复记录

来自分类Dev

删除SQL中的重复记录

来自分类Dev

在Oracle SQL中处理重复记录

来自分类Dev

在PL / SQL中检查重复记录

来自分类Dev

合并SQL Server中的重复记录

来自分类Dev

从 SQL 查询中获取重复记录

来自分类Dev

如何删除SQL中的重复记录?

来自分类Dev

sql重复记录与更改

来自分类Dev

sql重复记录与更改

来自分类Dev

SQL连接重复记录

来自分类Dev

如何处理SQL中的重复记录?

来自分类Dev

在SQL Server中处理空值和重复记录

来自分类Dev

避免在SQL的自反关系中重复记录

来自分类Dev

找出Sql-server中的重复记录

来自分类Dev

使用SQL删除表中的重复记录

来自分类Dev

Oracle SQL查询:从表中删除最旧的重复记录

来自分类Dev

如何处理SQL中的重复记录?

来自分类Dev

避免在SQL的自反关系中重复记录

来自分类Dev

从 SQL Server 中的表中选择除了重复记录

来自分类Dev

从 SQL Server 中的视图中删除重复记录

来自分类Dev

仅显示重复记录-Oracle SQL

来自分类Dev

如何从SQL Server删除重复记录?

来自分类Dev

动态SQL删除重复记录的过程

来自分类Dev

T- SQL重复记录

来自分类Dev

SQL Server:搜索重复记录

来自分类Dev

计算SQL中的重复记录,然后将重复记录的数量添加到记录数量中,并删除其余的记录

来自分类Dev

重命名R中的重复记录

来自分类Dev

提取数据框中的重复记录

来自分类Dev

获取Django queryset中的重复记录