Lembar kerja Basis data & SQL dengan jawaban

Lembar kerja Basis data & SQL gratis yang dapat dicetak: 8 soal dari mudah hingga tingkat ujian, dengan kunci jawaban. Cetak atau simpan sebagai PDF.

Untuk pengajar: gratis untuk dicetak, disalin, dan dipakai di kelas. Setiap lembar kerja baru punya nilai baru dan kunci jawabannya sendiri. Tautan ke ExamProblems di halaman mata kuliah Anda sangat kami hargai.

Nama: ____________________   Tanggal: ____________

1.Mudah

Pernyataan seperti CREATE, ALTER, dan DROP termasuk bagian SQL yang mana?

  1. ATransaction Control Language (TCL)
  2. BData Definition Language (DDL)
  3. CData Control Language (DCL)
  4. DData Manipulation Language (DML)
2.Mudah

Pernyataan SQL manakah yang mengambil data dari sebuah tabel?

  1. AINSERT
  2. BUPDATE
  3. CSELECT
  4. DCREATE
3.Mudah

Apa yang dilakukan COMMIT dalam sebuah transaksi?

  1. AMembatalkan semua perubahan yang dibuat sejak transaksi dimulai
  2. BMengunci seluruh basis data
  3. CMembuat semua perubahan transaksi menjadi permanen
  4. DMemulai tabel baru
4.Sedang

Tabel a memiliki 3 baris dan tabel b memiliki 4 baris. Berapa baris yang dikembalikan oleh SELECT * FROM a CROSS JOIN b?

  1. A7
  2. B3
  3. C4
  4. D12
5.Sedang

Kueri mana yang mengembalikan gaji tertinggi di setiap departemen?

  1. ASELECT dept, MAX(salary) FROM emp GROUP BY dept
  2. BSELECT dept, salary FROM emp WHERE salary = MAX(salary)
  3. CSELECT dept, MAX(salary) FROM emp ORDER BY dept
  4. DSELECT MAX(dept), salary FROM emp GROUP BY salary
6.Sedang

Mengapa SELECT price * 2 AS double_price FROM t WHERE double_price > 10 gagal di sebagian besar basis data?

  1. AAlias tidak boleh mengandung garis bawah
  2. BAritmetika tidak diizinkan dalam daftar SELECT
  3. CWHERE hanya dapat membandingkan kolom teks
  4. DWHERE dievaluasi sebelum daftar SELECT, sehingga alias itu belum ada
7.Sulit

Ada indeks komposit pada (last_name, first_name). Kondisi mana yang dapat menggunakannya paling efektif?

  1. AWHERE first_name = 'Eva'
  2. BWHERE UPPER(first_name) = 'EVA'
  3. CWHERE last_name = 'Jansen'
  4. DWHERE first_name LIKE '%a'
8.Sulit

Sebuah tabel memiliki sejuta baris dan kolom Boolean is_active yang bernilai TRUE untuk 95% baris. Mengapa optimizer mungkin mengabaikan indeks pada is_active untuk WHERE is_active = TRUE?

  1. AOptimizer tidak pernah menggunakan indeks dalam klausa WHERE
  2. BIndeks tidak dapat dibuat pada kolom Boolean
  3. CSebagian besar baris cocok, sehingga full table scan lebih murah daripada banyak pencarian indeks
  4. DTRUE diperlakukan sebagai NULL oleh indeks

Kunci jawaban

  1. 1. B · Data Definition Language (DDL)
  2. 2. C · SELECT
  3. 3. C · Membuat semua perubahan transaksi menjadi permanen
  4. 4. D · 12
  5. 5. A · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  6. 6. D · WHERE dievaluasi sebelum daftar SELECT, sehingga alias itu belum ada
  7. 7. C · WHERE last_name = 'Jansen'
  8. 8. C · Sebagian besar baris cocok, sehingga full table scan lebih murah daripada banyak pencarian indeks

Penyelesaian lengkap langkah demi langkah: latih topik ini di examproblems.com.