ใบงาน ฐานข้อมูลและ SQL พร้อมเฉลย

ใบงาน ฐานข้อมูลและ SQL ฟรีสำหรับพิมพ์: 8 ข้อ ตั้งแต่ระดับง่ายถึงระดับข้อสอบจริง พร้อมเฉลย พิมพ์หรือบันทึกเป็น PDF ได้

ใบงานใหม่ฝึกออนไลน์พร้อมคำใบ้

สำหรับผู้สอน: พิมพ์ ทำสำเนา และใช้ในชั้นเรียนได้ฟรี ใบงานใหม่แต่ละชุดมีค่าตัวเลขใหม่และเฉลยของตัวเอง หากใส่ลิงก์ไปยัง ExamProblems ในหน้ารายวิชาของคุณ เราจะขอบคุณมาก

ชื่อ: ____________________   วันที่: ____________

1.ง่าย

NULL ใน SQL แทนอะไร?

  1. Aค่าที่ขาดหายไปหรือไม่ทราบค่า
  2. Bเลขศูนย์ในคอลัมน์ตัวเลข
  3. Cสตริงว่าง
  4. Dค่าบูลีนเท็จ
2.ง่าย

ในแบบจำลองเชิงสัมพันธ์ แถวของตารางเรียกว่าอะไร?

  1. Aทูเพิล (tuple)
  2. Bโดเมน (domain)
  3. Cสคีมา (schema)
  4. Dแอตทริบิวต์ (attribute)
3.ง่าย

ข้อจำกัด (constraint) ใดรับรองว่าคอลัมน์ไม่มีทางเว้นว่าง (NULL)?

  1. ADEFAULT
  2. BNOT NULL
  3. CUNIQUE
  4. DCHECK NULL
4.ปานกลาง

นักเรียนลงเรียนได้หลายวิชา และวิชามีนักเรียนหลายคน จะสร้างแบบจำลองนี้ในตารางอย่างไร?

  1. Aด้วยคอลัมน์คีย์นอก course_id ในตาราง students ที่ชี้ไปยัง courses
  2. Bด้วยรายการ id ของวิชาที่เก็บในคอลัมน์เดียว
  3. Cด้วยตารางเชื่อม (junction table) ที่เก็บคีย์นอกไปยังทั้ง students และ courses
  4. Dโดยรวม students และ courses เป็นตารางเดียว
5.ปานกลาง

ข้อใดเกี่ยวกับ HAVING ถูกต้อง?

  1. Aใช้เรียงลำดับผลลัพธ์
  2. Bใช้ร่วมกับ GROUP BY ไม่ได้
  3. Cต้องมาก่อน WHERE ในคำสั่ง SELECT
  4. Dใช้ฟังก์ชันรวมค่าเพื่อกรองกลุ่มได้
6.ปานกลาง

คิวรีใดคืนจำนวนคำสั่งซื้อต่อลูกค้า?

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

phantom read คืออะไร?

  1. Aการอ่านการเปลี่ยนแปลงที่ยังไม่ commit
  2. Bคิวรีซ้ำให้แถวใหม่ที่ทรานแซกชันอื่นที่ commit แล้วแทรกเข้ามา
  3. Cการอ่านข้อมูลที่ไม่เคยถูกเขียน
  4. Dคิวรีที่ไม่คืนแถวใดเลย
8.ยาก

ฐานข้อมูลรายงานคัดลอกชื่อลูกค้าเข้าตาราง orders เพื่อเลี่ยงการเชื่อม ต้นทุนหลักของการทำดีนอร์มัลไลซ์นี้คืออะไร?

  1. Aใช้คีย์หลักไม่ได้อีกต่อไป
  2. Bคิวรีบนตาราง orders ช้าลง
  3. Cสำเนาซ้ำซ้อนต้องคงความสอดคล้องกันทุกครั้งที่ข้อมูลลูกค้าเปลี่ยน
  4. Dฐานข้อมูลใช้ดัชนีไม่ได้อีกต่อไป

เฉลย

  1. 1. A · ค่าที่ขาดหายไปหรือไม่ทราบค่า
  2. 2. A · ทูเพิล (tuple)
  3. 3. B · NOT NULL
  4. 4. C · ด้วยตารางเชื่อม (junction table) ที่เก็บคีย์นอกไปยังทั้ง students และ courses
  5. 5. D · ใช้ฟังก์ชันรวมค่าเพื่อกรองกลุ่มได้
  6. 6. C · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  7. 7. B · คิวรีซ้ำให้แถวใหม่ที่ทรานแซกชันอื่นที่ commit แล้วแทรกเข้ามา
  8. 8. C · สำเนาซ้ำซ้อนต้องคงความสอดคล้องกันทุกครั้งที่ข้อมูลลูกค้าเปลี่ยน

เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com