高效的SQL语句示例:
create table student(
id varchar(4) not null,
username varchar(20),
sex varchar(50),
age varchar(4),
class varchar(50),
constraint sy_test_key primary key ( id))
假设现在class条件如果传入空的话,就查询所有,如果不为空的话,就根据特定条件查找,一般的写好将对其进行判断,然后写两条SQL语句,例如:(假设传入的班级变量为classStr)
if("".equals(classStr))//注意此处这种写好优于classStr.equals(""),这样写的话,假如classStr传入的为Null,则会报错。
sql="select * from student";
else
sql = "select * from student where class='"+classStr+"'";
若采用逆向思维的话,则写一条语句就可以解决上面的问题。
sql = "select * from student where ''='" + classStr + "' or '"+classStr+"'=class"
由上面语句可看出,如果classStr为空的话,则查询所有,若classStr不为空的话,则根据其值进行查询。