首页 > 数据库技术 > 详细

关于sql拼接的知识点 where1=1

时间:2019-10-14 17:47:06      阅读:133      评论:0      收藏:0      [点我收藏+]
String sql="select * from tab_route where 1 = 1 ";

技术分享图片

 这样不会报错,而且可以根据情况,再去拼接sql

可以使用if(){}else{}

技术分享图片

 可以查询到所有数据

 

如果这样select * from tab_route where ;

技术分享图片

 

 

 就会报错

public int findTotalCount(int cid,String rname) {
//String sql="select count(*) from tab_route where cid=?";// cid就是每个旅游类别的标记比如 cid=1 代表休闲类那么多有休闲都会被查询出来
String sql="select count(*) from tab_route where 1 = 1 ";
StringBuilder sb=new StringBuilder(sql);
List params=new ArrayList();//所有条件
//判断参数是否有值
if (cid !=0){//没有参数那么拼接的就是"select count(*) from tab_route where 1 = 1 "
sb.append(" and cid = ? ");//添加?对应的值
params.add(cid);
}if (rname !=null && rname.length()>0){
sb.append(" and rname like ? ");
params.add("%"+rname+"%");
}
sql = sb.toString();
System.out.println(sql);
return template.queryForObject(sql,Integer.class,params.toArray());//返回一个整数
}
int cid,String rname  如果这俩参数都不传那么执行的就是
"select count(*) from tab_route where 1 = 1 "//查询全部

 

关于sql拼接的知识点 where1=1

原文:https://www.cnblogs.com/july7/p/11672729.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!