2013-06-12 67 views
2

在我以前的應用程序中,我正在從sqlite數據庫中的表中檢索數據。 所以我用下面的方法來獲取數據:從一些如何在android sqlite數據庫中使用查詢

cursor = database.query("CIRCLE", new String[] { "CIRCLE_ID", 
      "ZONE_ID", "NAME" }, "ZONE_ID = " + id, null, null, null, "NAME"); 
    cursor.moveToFirst(); 
    if (!cursor.isAfterLast()) { 
     do { 
      circleLists.add(new CircleList(cursor.getInt(0), cursor 
        .getInt(1), cursor.getString(2))); 
     } while (cursor.moveToNext()); 
    } 
    cursor.close(); 

現在我需要從一個表,其ID已被其它表的標識和WHERE條件匹配ID(獲取數據後)匹配的檢索數據其他表。 我有SQl查詢。我不知道如何在光標= database.query(...)實現此查詢

SQL查詢是:

select d.division_id, d.name from division d, division_circle_assoc dca 
where d.division_id = dca.division_id and dca.circle_id = 1 
+1

HTTP ://stackoverflow.com/questions/17056172/android-sqlite-select-one-row-from-table-where-qualifier-is-in-other-table。檢查這可能會幫助 – Raghunandan

回答

1
cursor = database.rawQuery("select d.division_id, d.name from division d, division_circle_assoc dca 
where d.division_id = dca.division_id and dca.circle_id = 1", null); 

String[] columns = new String[] { KEY_D_ID, KEY_NAME}; 
      String whereClause = KEY_D_ID + "=" + KEY_DD_ID +" AND "+ KEY_C_ID +"= 1"; 
      Cursor cursor = mDb.query(true, DIVISION + " INNER JOIN "+ DIVISION_CIRCLE, columns, whereClause, null, null, null, null, null); 
+0

我知道我們可以使用rawQuery ...但有沒有辦法使用database.query(...)來檢索數據... ??? –

+1

檢查我編輯的答案。 – Riser

相關問題