2016-06-22 10 views
0

SQLite DBに2つのテーブルがあります。私はtable1から3つのランダムな行とtable2から3つのランダムな行を選択しようとしており、それらをlistViewで交互に使用しています。SQLite DBからListViewにランダムな行が交互に表示される - 順序が正しくない

(EX) TABLE1ランダム行 table2のランダム行 TABLE1ランダム行 table2のランダム行 TABLE1ランダム行 table2のランダム行

それはリストビューの各テーブルから行を交互にされていないいくつかの理由。それは彼らが望む順序どおりにそれらを置く。

これは、行を選択し、選択したテーブルにそれらを挿入するための私のコードです:

while (x <= 2) { 
        cursor1 = db.rawQuery("SELECT * FROM table1 ORDER BY RANDOM() LIMIT 1", null); 
        cursor1.moveToFirst(); 
        rowId = cursor1.getInt(cursor1.getColumnIndex("_id")); 
        dbHandler.getWritableDatabase().execSQL("INSERT INTO chosen SELECT * FROM table1 WHERE _id = '" + rowId + "'"); 
        dbHandler.getWritableDatabase().execSQL("UPDATE chosen SET _id = '" + newID + "' WHERE _id = '" + rowId + "'"); 
        newID++; 

        cursor2 = db.rawQuery("SELECT * FROM table2 ORDER BY RANDOM() LIMIT 1", null); 
        cursor2.moveToFirst(); 
        rowId = cursor2.getInt(cursor2.getColumnIndex("_id")); 
        dbHandler.getWritableDatabase().execSQL("INSERT INTO chosen SELECT * FROM table2 WHERE _id = '" + rowId + "'"); 
        dbHandler.getWritableDatabase().execSQL("UPDATE chosen SET _id = '" + newID + "' WHERE _id = '" + rowId + "'"); 
        newID++; 

        x++; 
       } 
       cursor1.close(); 
       cursor2.close(); 

これは私がListViewコントロール

Cursor cursor = db.rawQuery("SELECT _id, value FROM chosen ORDER BY _id", null); 

どれでも助けを移入するデータを選択するために使用していますものです大変感謝しています!

答えて

0

私は必要以上に複雑になっていました。

Cursor cursor = db.rawQuery("SELECT _id, value FROM chosen ORDER BY _id", null); 

だから、非常に簡単 - と:ちょうど選ばれたテーブルの行ID列が自動インクリメントし、同様のリストビューのクエリを保持することを確認しました

while (x <= 2) { 
        dbHandler.getWritableDatabase().execSQL("INSERT INTO chosen (value1, value2, value3) SELECT value1, value2, value3 FROM table1 ORDER BY RANDOM() LIMIT 1, null); 
        dbHandler.getWritableDatabase().execSQL("INSERT INTO chosen (value1, value2, value3) SELECT value1, value2, value3 FROM table2 ORDER BY RANDOM() LIMIT 1, null); 
        x++; 
        } 

:ここに私がやってしまったものです完璧に動作します!

関連する問題