页面中可以下拉选 “姓名”“班级”“学科” 三个条件,现在需要姓名,学科不选任何值,则查询出此班级所有姓名,学科的数据
在数据库中表现为
SELECT * FROM table_name
WHERE 1=1 AND ('all' = 'all' OR name='all') //前台数据不选的情况下值为“all”,如果值为null 就写 null is null
AND ("all"="all" OR clazz=“3”)
AND("all"=“all” OR subject="all")
在jdbc中为:
SELECT * FROM table_name
WHERE 1=1 AND (? = 'all' OR name=?) //前台数据不选的情况下值为“all”,如果值为null 就写 ? is null
AND (?="all" OR clazz=?)
AND(?=“all” OR subject=?)
如果在java中直接拼接sql语句的话容易造成注入攻击