将User-ID与db中的少量表进行比较,如果员工已超过5年,则删除所有记录

时间:2018-05-07 05:20:27

标签: java mysql sql database multithreading

我已经编写了一个SQL存储过程来删除员工记录,并且有50万条记录永远在运行。

我在平面文件(.xls)中有一百万条记录,其中包含user_id和特定超市连锁店的终止日期。

现在我必须将此user_ids与数据库中的几个表进行比较,这些表不跟踪终止日期,如果员工已超过5年,则删除所有记录。

(这些用户达到50万条记录)。如果没有DB脚本需要很长时间才能运行,那么快速解决这个问题的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

将文件转换为CSV并将其导入内存临时表,主键为user_id。使用对此临时表的引用来执行删除操作。主键将在字段上创建索引,这将加快操作。