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

Operator manakah yang digunakan untuk padanan corak teks mudah dalam klausa WHERE?

  1. ACONTAINS
  2. BLIKE
  3. CSIMILAR
  4. DMATCH
2.Mudah

Penyataan manakah yang memadam seluruh jadual, termasuk strukturnya?

  1. ADELETE FROM
  2. BREMOVE TABLE
  3. CDROP TABLE
  4. DTRUNCATE ROWS
3.Mudah

Kunci asing (foreign key) ialah:

  1. AKunci yang digunakan oleh pengguna asing
  2. BLajur yang nilainya mesti unik merentas semua baris jadual
  3. CKunci yang sentiasa disulitkan
  4. DLajur yang merujuk kepada kunci utama jadual lain
4.Sederhana

Apakah maksud kebergantungan fungsi A → B?

  1. AA ialah kunci asing yang merujuk B
  2. BSetiap nilai A dikaitkan dengan tepat satu nilai B
  3. CSetiap nilai B dikaitkan dengan tepat satu nilai A
  4. DA dan B kedua-duanya kunci utama
5.Sederhana

Pertanyaan manakah yang memulangkan bilangan pesanan bagi setiap pelanggan?

  1. ASELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  2. BSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
  3. CSELECT customer_id FROM orders WHERE COUNT(*) > 0
  4. DSELECT DISTINCT COUNT(*) FROM orders
6.Sederhana

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

  1. AMencantumkan jadual employees dengan dirinya sendiri menggunakan dua alias
  2. BMenggabungkan jadual dengan dirinya sendiri menggunakan UNION ALL dan penapis WHERE
  3. CMenggunakan GROUP BY manager_id sahaja
  4. DMencipta salinan kedua jadual pada cakera
7.Sukar

Jadual enrolment(student_id, course_id, student_name, grade) mempunyai kunci (student_id, course_id). Bentuk normal manakah yang dilanggarnya?

  1. ABentuk normal pertama, kerana lajur grade tidak mengandungi nilai atomik
  2. BTiada, ia dalam BCNF
  3. CBentuk normal kedua, kerana student_name bergantung pada student_id sahaja
  4. DBentuk normal ketiga sahaja, kerana grade bergantung pada student_name
8.Sukar

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

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

Kunci jawapan

  1. 1. B · LIKE
  2. 2. C · DROP TABLE
  3. 3. D · Lajur yang merujuk kepada kunci utama jadual lain
  4. 4. B · Setiap nilai A dikaitkan dengan tepat satu nilai B
  5. 5. A · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  6. 6. A · Mencantumkan jadual employees dengan dirinya sendiri menggunakan dua alias
  7. 7. C · Bentuk normal kedua, kerana student_name bergantung pada student_id sahaja
  8. 8. D · COUNT(*) mengira baris berisi NULL sebagai 1 bagi pelanggan tanpa pesanan

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