1. 在sql中 使用in 可能回得不到 想要的数据
所以 可以 使用拼接
if (!Strings.isNullOrEmpty(request.OrderStatus)) {
String[] oo=request.orderStatus.split(";");
for(int i=0;i<oo.length;i++){
if(oo[i]!=null&&!oo[i].equals("")){
if(i==0){
sql.append(" AND ( n.order_status ='"+ oo[i] +"' ");
}else{
sql.append(" or n.order_status ='"+oo[i]+"' ");
}
}
}
sql.append(" ) ");
}
第一个 肯定是 and 第二个开始就是 or
本文介绍了一种在SQL查询中使用字符串拼接的方法来处理多个状态筛选的问题,避免使用IN关键字可能导致的数据遗漏。通过示例代码详细展示了如何根据请求参数动态构建SQL查询条件。
26万+

被折叠的 条评论
为什么被折叠?



