Lembaran kerja Pangkalan data & SQL dengan jawapan

Lembaran kerja Pangkalan data & SQL percuma untuk dicetak: 8 soalan dari mudah hingga tahap peperiksaan, dengan skema jawapan. Cetak atau simpan sebagai PDF.

Untuk pensyarah dan guru: percuma untuk dicetak, disalin dan digunakan di dalam kelas. Setiap lembaran kerja baharu mempunyai nilai baharu dan skema jawapannya sendiri. Pautan ke ExamProblems di halaman kursus anda amat dihargai.

Nama: ____________________   Tarikh: ____________

1.Mudah

Dalam PostgreSQL dan MySQL, klausa manakah yang memulangkan hanya 10 baris pertama hasil?

  1. ALIMIT 10
  2. BMAX 10
  3. CTOP ROWS 10
  4. DFIRST 10 ONLY
2.Mudah

Penyataan SQL manakah yang menambah baris baharu pada jadual?

  1. ASELECT
  2. BUPDATE
  3. CINSERT
  4. DALTER
3.Mudah

Apakah yang dilakukan oleh ROLLBACK dalam transaksi?

  1. AMengulang penyataan terakhir
  2. BMenyimpan semua perubahan transaksi secara kekal ke cakera
  3. CMembuat asal perubahan yang dibuat sejak transaksi bermula
  4. DMemadam jadual
4.Sederhana

Pertanyaan manakah yang menyenaraikan pelanggan yang tidak pernah membuat pesanan?

  1. ASELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  2. BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
  3. CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
5.Sederhana

Apakah yang dipulangkan oleh EXCEPT (dipanggil MINUS dalam Oracle)?

  1. ASemua baris daripada kedua-dua pertanyaan tanpa pendua
  2. BBaris pertanyaan kedua yang tidak muncul dalam yang pertama
  3. CBaris pertanyaan pertama yang tidak muncul dalam yang kedua
  4. DBaris yang muncul dalam kedua-dua pertanyaan
6.Sederhana

Kunci asing diisytiharkan dengan ON DELETE CASCADE. Apakah yang berlaku apabila baris induk dipadam?

  1. ABaris induk disalin ke jadual arkib
  2. BPemadaman sentiasa ditolak
  3. CBaris anak yang merujuknya dipadam secara automatik
  4. DKunci asing dalam baris anak ditetapkan kepada NULL secara automatik
7.Sukar

Selepas customers LEFT JOIN orders, mengapakah menggunakan COUNT(o.id) dan bukan COUNT(*) untuk mengira pesanan bagi setiap pelanggan?

  1. ACOUNT(o.id) hanya mengira pelanggan berbeza
  2. BCOUNT(*) mengabaikan baris dengan nilai NULL
  3. CCOUNT(*) tidak dibenarkan selepas cantuman
  4. DCOUNT(*) mengira baris berisi NULL sebagai 1 bagi pelanggan tanpa pesanan
8.Sukar

Apakah yang dikira oleh SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales?

  1. APurata amount sehari
  2. BSatu baris bagi setiap hari dengan jumlah hari itu sahaja
  3. CJumlah semua amount pada setiap baris
  4. DJumlah berjalan amount yang disusun mengikut hari

Kunci jawapan

  1. 1. A · LIMIT 10
  2. 2. C · INSERT
  3. 3. C · Membuat asal perubahan yang dibuat sejak transaksi bermula
  4. 4. C · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  5. 5. C · Baris pertanyaan pertama yang tidak muncul dalam yang kedua
  6. 6. C · Baris anak yang merujuknya dipadam secara automatik
  7. 7. D · COUNT(*) mengira baris berisi NULL sebagai 1 bagi pelanggan tanpa pesanan
  8. 8. D · Jumlah berjalan amount yang disusun mengikut hari

Penyelesaian langkah demi langkah yang lengkap: berlatih topik ini di examproblems.com.