处理in查询的时候id超过1000,而报错
发布日期:2021-05-06 03:36:12 浏览次数:13 分类:技术文章

本文共 692 字,大约阅读时间需要 2 分钟。

sql in查询的时候,in里面的数据过多而报错,“列表中的最大表达式数为 1000”的解决方案

//处理in查询的时候id超过1000,而报错//id 需要查询的字段,也就是in前面的字段,list是in里面的条件集合	private static String moreIdsDeal(String id, List
list){ StringBuffer sb = new StringBuffer(); for(int i = 0; i < list.size(); i++){ if(i == 0){ sb.append(id).append(" in ("); } sb.append("'").append(list.get(i).toString()).append("'"); if(i >= 900 && i < list.size()-1){ if(i % 900 == 0){ sb.append(") or ").append(id).append(" in ("); }else{ sb.append(","); } }else{ if(i < list.size()-1){ sb.append(","); } } if(i == list.size()-1){ sb.append(")"); } } return sb.toString(); }

调用的时候

moreIdsDeal("B.FLID", ids_list)

 

上一篇:java文件上传--简单实现
下一篇:jquery动态改变textarea高度,高度随着内容增加而自动变高,内容减少而自动变低

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年03月11日 02时25分05秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章