how to add WHERE clause to Query on android

后端 未结 3 1033
清酒与你
清酒与你 2021-02-19 19:13

I would like to limit the results to those whose KEY_HOMEID is equal to journalId. I\'ve been on this for a couple days any help would be appreciated.

public Curso

相关标签:
3条回答
  • 2021-02-19 19:45

    Have a look at http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#query

    Your query should look a little like this:

    mDb.query(DATABASE_TABLE, // Table name
              columnNames, // String[] containing your column names
              KEY_HOMEID+" = "+jounalId, // your where statement, you do not include the WHERE or the FROM DATABASE_TABLE parts of the query,
              null,
              null,
              null,
              null
             );
    

    If you feel more comfortable writing sql queries you can also use:

    mDb.rawQuery("SQL STATEMENT", null);
    
    0 讨论(0)
  • 2021-02-19 19:48

    It makes your code more clear if you'll use it where arguments (in query parameters) Example:

            String [] settingsProjection = {
                    DBContract.Settings._ID,
                    DBContract.Settings.COLUMN_NAME_USER_ID,
                    DBContract.Settings.COLUMN_NAME_AUTO_LOGIN
            };
    
            String whereClause = DBContract.Settings.COLUMN_NAME_USER_ID+"=?";
            String [] whereArgs = {userId.toString()};
    
            Cursor c = db.query(
                    DBContract.Settings.TABLE_NAME,
                    settingsProjection,
                    whereClause,
                    whereArgs,
                    null,
                    null,
                    null
            );
    
    0 讨论(0)
  • 2021-02-19 19:50

    I was looking for an answer to my problem here as well.

    It turned out that I tried to have a String instead of an Integer. My solution was to do it like that: 'String' instead of Integer.

    Here is the code that worked for me in the end:

    return db.query(TABLE_NAME_REMINDER, PROJECTION, REMINDER_REMINDER_TYPE+" = '"+rem_type+"'", null, null, null, null);
    
    0 讨论(0)
提交回复
热议问题