SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

Bagaimana cara menggabungkan data dari dua tabel terpisah menjadi satu Kursor?

Anda dapat menggunakan CursorJoiner untuk mendapatkan sesuatu yang mirip dengan menggabungkan dua Kursor menjadi satu. CursorJoiner sebenarnya tidak melakukan penggabungan. Saat Anda mengulanginya, itu memindahkan dua Kursor asli sehingga barisnya akan cocok dengan kolom yang ditentukan. Inilah mengapa kedua Kursor perlu diurutkan pada kolom yang akan digunakan dalam gabungan.

Tautan ke dokumentasi:http://developer.android.com/reference/android/database/CursorJoiner.html

Contoh kode:

CursorJoiner joiner = new CursorJoiner(userCursor, new String[]{ "user_id" }, postCursor, new String[] {"user_id"});

while (joiner.hasNext()) {
    CursorJoiner.Result result = joiner.next();
        switch (result) {
            case LEFT:
                // don't care about this case
                break;

            case RIGHT:
                // nor this case
                break;

            case BOTH:
                // here both original Cursors are pointing at rows that have the same user_id, so we can extract values
                int postId = postCursor.getInt(...);
                String headline = postCursor.getString(...);
                int userId = userCursor.getInt(...);        
                String userName = userCursor.getString(...);

                // do something with above values

                break;

        }
}     


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLiteException menggunakan WHERE +KEY_Date+='+date+'

  2. Android SQLlite tidak memperbarui data

  3. Cara Mengaktifkan Dukungan Kunci Asing di SQLite

  4. 11 Cara Menemukan Baris Duplikat sambil Mengabaikan Kunci Utama di SQLite

  5. Masukkan di SQLite Database android