В запросе вы можете добавить несколько условий, чтобы получить только те строки, которые вам нужны. В вашем примере у вас есть:
COLUMN_USER_ID + " = ?",
new String[]{"0"},
query
метод заменит каждый символ "?"
параметром выбора, указанным в следующем массиве строк (в вашем примере массив строк new String[] {"0"}
).
Обратите внимание, что вы фильтруете строки только по COLUMN_USER_ID
. Поскольку у вас есть только одно условие выбора, вы должны предоставить массив только с одним элементом. В этом смысл new String[] {"0"}
.
Эта строка создает и создает экземпляр массива только с одним элементом. Этот элемент "0"
. Это то же самое:
String [] selectionArgument = new String[1];
selectionArgument[0] = "0";
Этот параметр является массивом String, потому что вы можете иметь столько условий, сколько хотите ... Итак, если вы хотите использовать два условия, вам нужно передать массив строк с двумя элементами. Что-то вроде:
COLUMN_USER_ID + " = ?" + " AND " + COLUMN_USER_AGE + " > ? ",
new String[]{"0", "18"},
Обратите внимание, что в этом примере у вас есть два "?"
символа в качестве критерия выбора. Таким образом, строковый массив также должен быть массивом с двумя элементами: "0"
и "18"
.