我的查询是SELECT DefaultId FROM tblsample where ('567' = DefaultId) || ('567' = Name)
在上面的查询中
table name = tblsample
Column Names = DefaultId , Name
Input Value = 567
现在,我想检查此值在表格中的哪一列中可用,并返回其 DefaultId 。我能够在Sqlite中实现这一点,想知道是否还有更好的方法来优化查询和在android中使用
database.query(boolean distinct, String table, String[] columns,String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)
我必须在android中使用哪个查询。
答案 0 :(得分:4)
使用此代码段:
String table = "tblsample";
String selection = "DefaultId =? OR Name=?";
String[] selectionArgs = new String[]{"567"};
String[] projection = new String[]{"DefaultId","Name"}; // if you want to fetch only these two columns
在database.query
:
database.query(true, table, projection, selection, selectionArgs, null, null, null, null);
更改不同,限制,订单,拥有和 groupBy 如果你需要它们。
答案 1 :(得分:1)
您可以使用 SQLiteDatabase documentation 来指导您。
table = "tblsample";
columns = new String[]{"DefaultId"};
selection = "DefaultId =? OR Name=?";
selectionArgs = new String{"567"};
答案 2 :(得分:1)
String sql = "SELECT DefaultId FROM tblsample where (DefaultId = 567) OR (Name = 567)";
Cursor cursor=database.rawQuery(sql,null);
if(cursor != null && cursor.getCount()>0){
//value available
} else{
//not avail
}