需要解决的问题:公司有个数据库A,里面有1200万条数据,其中有200万条是重复的。我想将这个数据库中的数据导到另一个数据库B中,但去掉重复的。
两个数据库的字段都为:ID(主键),file1(像枚举一样有200个左右值,可以重复),file2(不能有重复的值)。
思路:通过ado.net从数据库A循环取出每一条数据,然后判断B中是否有相同的数据了,如果没有插入,否则不插入。
性能问题:当数据库B中的数据少时性能还可以,但当数据量在10万以上查询是否已经有和file2字段一样的值得速度就慢下来了。请问我应该怎样设置数据库B上的索引和写个什么样的查询语句判断数据是否存在?并且以后在实际生产环境中会一直使用数据库B,几乎每秒都在进行查询file2字段是否已经存在相同的值,如果没有相同的值就插入新数据行的操作