❶ 批量查询数据库是否存在某个数据
1.通常遇到这种问题,最初步的想法就是循环,读取数据库判断
2.更进一步,由于循环访问数据库导致性能十分低下,是否可以先取出全集,到内存中进行比较,这里需要提醒的是使用HashSet或Dictionary判断是否存在比List性能要高
3.但当全集数据量极大的时候,这种做法可能会导致内存不足,接下来考虑是否能缩小提取的范围
4.提取原始数据时,直接只提取ID在需要比较的列表中,即selectidfromtablewhereidin(需要判断的id结果集),单数据提取到HashSet,kv的提取到Dictionary
5.提取出in条件的结果集后,与待比较的ID进行对比,取出的结果集中存在的ID,即是已存在的信息,不存在的,就是新增的ID