簡體   English   中英

SQL Android 多條件查詢公式

[英]SQL Android Query formulation with multiple conditions

我正在編寫一個 android 應用程序,它試圖根據兩個獨立的標准從數據庫中提取數據。

鍛煉和鍛煉字段都是數據庫中的字符串。 我想返回一個 cursor 只包含滿足兩個條件的行。 哦,我還希望它按日期順序排序......

public Cursor graphQuery(String exercise, String workout) {
     Cursor cursor = mDb.query(DATABASE_TABLE, new String [] {KEY_DATE, KEY_REPS,       
         KEY_REPS_FEEL, KEY_WEIGHT, KEY_WEIGHT_FEEL}, "KEY_WORKOUT=" + workout + "AND" +  
         "KEY_EXERCISE=" + exercise, null , null, null, KEY_DATE); 

     return cursor;
}

我是一個新的 android 編碼器,希望能得到幫助!

使用selectionselectionArgs

public Cursor graphQuery(String exercise, String workout) {
     Cursor cursor = mDb.query(DATABASE_TABLE, new String [] {KEY_DATE, KEY_REPS,       
         KEY_REPS_FEEL, KEY_WEIGHT, KEY_WEIGHT_FEEL}, "KEY_WORKOUT = ? AND KEY_EXERCISE = ?",
         new String[] { workout, exercise },
         null,
         null,
         KEY_DATE); 

     return cursor;
}

注意selection String? s 代替實際值,並且實際值作為String[]selectionArgs參數傳入。 SQLite 將取代那些? s 與來自String[] selectionArgs的值。

簡短回答:“AND”->“AND”周圍缺少空格。:

長答案:請使用參數標記 - 您將立即看到缺少的空格:

Cursor cursor = mDb.query(DATABASE_TABLE, new String [] { KEY_DATE, KEY_REPS,       
         KEY_REPS_FEEL, KEY_WEIGHT, KEY_WEIGHT_FEEL }, "KEY_WORKOUT=? and KEY_EXERCISE=?", new String[] { workout, exercise }, null, null, KEY_DATE);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM