2015-06-18 2 views
-1

Я хочу отличное значение. Этот следующий метод дает мне то же значение снова и снова. Любые предложения?Получить отличительные значения из столбца

ArrayList<String> getNumberFromNote(String note) { 
    Cursor cursor; 
    mDbHelper = mSqliteHelper.getReadableDatabase(); 
    String whereClause = SqliteHelpers.NUMBER_COLUMN +" = ?"; 
    String[] whereArgs = new String[] {note}; 
    cursor = mDbHelper.query(SqliteHelpers.TABLE_NAME, null, whereClause, whereArgs, 
      null, null, null); 
    ArrayList<String> arrayList = new ArrayList<>(); 
    while (cursor.moveToNext()) { 
     String itemname = cursor.getString(cursor.getColumnIndex(
       SqliteHelpers.NUMBER_COLUMN)); 
     if (itemname != null) { 
      arrayList.add(itemname); 
      System.out.println(itemname); 
     } 
    } 
    return arrayList; 

} 
+0

Единственное значение будет «note». Просто пропустите весь запрос целиком, и 'return note' ... – njzk2

+0

фрагмент будет полезен, я не понимаю, где именно вернуться ... до цикла? –

+0

вы получаете столбец 'number' из строк, где' number == note'. В принципе, вы просто получаете «примечание». Почему вы даже делаете запрос? – njzk2

ответ

0
cursor= db.rawQuery("select Distinct "+Database.Colomnname+" from "+Database.Colomnname, null); 
+1

вещь, которую я хочу, будет чем-то вроде «" SELECT Distinct NOTES_COLUMN FROM "+ SqliteHelpers.TABLE_NAME, где number = 22"; что-то вроде этого –

+0

Пожалуйста, добавьте детали, объясняющие код – Ram

0

Использование метода public Cursor query (boolean distinct, String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)

distinct параметр должен быть true. groupBy и другие могут быть null, если они вам не нужны

Смежные вопросы