0
관련 단어가 들어있는 제품 이름을 검색하려면 'like'를 사용하여 해당 제품을 표시하지 않습니다.SQLite LIKE 검색
String sql = "SELECT "+WPTemplateDB.PRODUCT_TABLE+".*"
+" FROM "+WPTemplateDB.PRODUCT_TABLE+" product"
+" JOIN "+WPTemplateDB.CATEGORY_TABLE+" cat"
+" ON product."+WPTemplateDB.PRODUCT_ID+"= cat."+WPTemplateDB.PRODUCT_ID
+" WHERE "+column+" "+(column==WPTemplateDB.TITLE?"LIKE":"=")+" ?";
Log.d("sql", sql);
Log.d("query",(column==WPTemplateDB.TITLE?("%"+query+"%"):query));
Cursor cursor = db.rawQuery(sql, new String[]{(query==WPTemplateDB.TITLE?"%"+query+"%":query)});
Log.d("count", cursor.getCount()+"");
if (cursor.getCount()>0){
while (cursor.moveToNext()){
Log.d("product", cursor.getInt(cursor.getColumnIndex(WPTemplateDB.PRODUCT_ID))+"");
Product product = new Product(cursor.getInt(cursor.getColumnIndex(WPTemplateDB.PRODUCT_ID)), db);
gridProduct.add(product);
}
return gridProduct;
} else {
return new ArrayList<Product>(); //avoid returning null
}
난 그냥 문자로 제목을 검색 'A', 로그가 올바르게 %로 %를 변환 표시하지만 카운트가 밖으로 0 온다 (이것은 확실히 '제품'은을 가진 제목을 '존재)하는 아무것도 찾지 않습니다 ........ '='이 아니라 ''같이 ''와 함께 올 때 작동합니다! 왜?? 그것은이 라인과 같은
내가 어리석은 실수를 저질렀다. XD, thx – Simon