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

Apakah yang dilakukan oleh UNION pada hasil dua pertanyaan SELECT?

  1. AMengekalkan hanya baris yang muncul dalam pertanyaan pertama tetapi bukan yang kedua
  2. BMengekalkan hanya baris yang muncul dalam kedua-duanya
  3. CMenggabungkannya menjadi satu hasil dan membuang baris pendua
  4. DMencantumkannya bersebelahan pada kunci
2.Mudah

Apakah yang dilakukan oleh ROLLBACK dalam transaksi?

  1. AMenyimpan semua perubahan transaksi secara kekal ke cakera
  2. BMembuat asal perubahan yang dibuat sejak transaksi bermula
  3. CMengulang penyataan terakhir
  4. DMemadam jadual
3.Mudah

Kunci asing (foreign key) ialah:

  1. ALajur yang nilainya mesti unik merentas semua baris jadual
  2. BKunci yang sentiasa disulitkan
  3. CLajur yang merujuk kepada kunci utama jadual lain
  4. DKunci yang digunakan oleh pengguna asing
4.Sederhana

Jadual employees mempunyai lajur manager_id yang merujuk pekerja lain. Bagaimanakah anda menyenaraikan setiap pekerja bersama nama pengurusnya?

  1. AMenggunakan GROUP BY manager_id sahaja
  2. BMenggabungkan jadual dengan dirinya sendiri menggunakan UNION ALL dan penapis WHERE
  3. CMencipta salinan kedua jadual pada cakera
  4. DMencantumkan jadual employees dengan dirinya sendiri menggunakan dua alias
5.Sederhana

Bilakah WHERE EXISTS (subquery) benar bagi satu baris?

  1. AApabila subpertanyaan memulangkan tepat satu baris
  2. BApabila subpertanyaan memulangkan sekurang-kurangnya satu baris
  3. CApabila subpertanyaan tidak memulangkan nilai NULL
  4. DApabila subpertanyaan memulangkan nombor lebih besar daripada sifar
6.Sederhana

Mengapakah indeks dicipta pada lajur?

  1. AUntuk mempercepat carian dan cantuman pada lajur itu
  2. BUntuk mencegah nilai NULL
  3. CUntuk menjimatkan ruang cakera
  4. DUntuk mempercepat sisipan dan kemas kini pada lajur itu
7.Sukar

Jadual mempunyai sejuta baris dan lajur Boolean is_active yang TRUE untuk 95% daripadanya. Mengapakah pengoptimum mungkin mengabaikan indeks pada is_active untuk WHERE is_active = TRUE?

  1. APengoptimum tidak pernah menggunakan indeks dalam klausa WHERE
  2. BIndeks tidak boleh dicipta pada lajur Boolean
  3. CTRUE dianggap NULL oleh indeks
  4. DKebanyakan baris sepadan, maka imbasan jadual penuh lebih murah daripada banyak carian indeks
8.Sukar

Ciri SQL manakah yang paling sesuai untuk mencari setiap pekerja di bawah seorang pengurus dalam pokok organisasi berkedalaman tidak diketahui?

  1. AKekangan UNIQUE pada manager_id
  2. BUngkapan jadual lazim rekursif (WITH RECURSIVE)
  3. CGROUP BY pada manager_id
  4. DSatu cantuman kendiri jadual employees pada manager_id

Kunci jawapan

  1. 1. C · Menggabungkannya menjadi satu hasil dan membuang baris pendua
  2. 2. B · Membuat asal perubahan yang dibuat sejak transaksi bermula
  3. 3. C · Lajur yang merujuk kepada kunci utama jadual lain
  4. 4. D · Mencantumkan jadual employees dengan dirinya sendiri menggunakan dua alias
  5. 5. B · Apabila subpertanyaan memulangkan sekurang-kurangnya satu baris
  6. 6. A · Untuk mempercepat carian dan cantuman pada lajur itu
  7. 7. D · Kebanyakan baris sepadan, maka imbasan jadual penuh lebih murah daripada banyak carian indeks
  8. 8. B · Ungkapan jadual lazim rekursif (WITH RECURSIVE)

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