批量数据判断是否存在/不存在


1.通常遇到这种问题,最初步的想法就是循环,读取数据库判断

2.更进一步,由于循环访问数据库导致性能十分低下,是否可以先取出全集,到内存中进行比较,这里需要提醒的是使用HashSet或Dictionary判断是否存在比List性能要高

3.但当全集数据量极大的时候,这种做法可能会导致内存不足,接下来考虑是否能缩小提取的范围

4.提取原始数据时,直接只提取ID在需要比较的列表中,即 select id from table where id in (需要判断的id结果集),单数据提取到HashSet,kv的提取到Dictionary

5.提取出in条件的结果集后,与待比较的ID进行对比,取出的结果集中存在的ID,即是已存在的信息,不存在的,就是新增的ID


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM