В SQL вы можете создавать логические выражения с помощью AND или OR.
Если у вас есть входы, которые вы хотите, чтобы соответствовать соответствующим полям (т.е. и должны соответствовать), вы должны использовать AND:
mCursor = mDb.query(true, SQLITE_TABLE,
new String[] { KEY_ROWID, KEY_CODE, KEY_NAME, KEY_CONTINENT, KEY_REGION },
KEY_CODE + " LIKE ? AND " + KEY_NAME + " LIKE ?",
new String[] { "%"+inputText+"%", "%"+inputName+"%" },
null, null, null, null);
Если у вас есть только один вход, который может соответствовать в либо поле, вы должны использовать ИЛИ:
mCursor = mDb.query(true, SQLITE_TABLE,
new String[] { KEY_ROWID, KEY_CODE, KEY_NAME, KEY_CONTINENT, KEY_REGION },
KEY_CODE + " LIKE ? OR " + KEY_NAME + " LIKE ?",
new String[] { "%"+inputText+"%", "%"+inputText+"%", },
null, null, null, null);
Пожалуйста, обратите внимание, что вы всегда должны использовать параметры (?
) для строковых значений, чтобы избежать проблем форматирования и SQL injection attacks.
My God RameshLal Так дешево – Trikaldarshi