當我們在查詢數據庫中的信息時,很多時候需要根據用戶輸入的條件進行查詢,有些條件是有的,可有些條件沒有,這就需要進行組裝條件語句了。下面這種方法就是根據這種情況進行編寫的,希望對看官有所幫助:
String sql = "select * from table where "; //where後1
個空格
StringBuffer stb = new StringBuffer(sql);
if(!(name == null || "".equals(name))) {
stb.append(" name = '" + name + "' and "); //and後3個空格
}
if(!(age == null || "".equals(age))) {
stb.append(" age = '" + age + "' and "); //and後3
個空格
}
if(!TextUtils.equals(stb.toString(), "")){
sql = stb.substring(0, stb.length() - 6);
}
//where後空1個空格和and後空3個空格長度都是6個字符,這是爲了方便最後減掉多餘部分 長度都是6
return sql;