解决Mybatis中 IN 查询超过1000报错问题

1,133 阅读1分钟

如图所示,使用嵌套循环,注意外层循环 separator="or" ,内层循环 separator=","
以及and不在循环内,这样执行后的sql 即为 :

and ( login_name in ("","",...)  or  login_name in ("","",...) ),

loginNameList 可以使用guava中将list分段的方法对一个大的list进行指定大小的分段

newList = Lists.partten(list,size);