1.ง่าย
CROSS JOIN ให้ผลลัพธ์อะไร?
- Aเฉพาะแถวของตารางแรก
- Bเฉพาะแถวที่ตรงกันบนคอลัมน์คีย์ร่วม
- Cทุกชุดค่าผสมของแถวจากสองตาราง
- Dเฉพาะแถวที่ไม่ตรงกัน
2.ง่าย
อนุประโยคใดกรองแถวก่อนการจัดกลุ่ม?
- AORDER BY
- BHAVING
- CGROUP BY
- DWHERE
3.ง่าย
คำสั่ง เช่น CREATE, ALTER และ DROP จัดอยู่ในส่วนใดของ SQL?
- Aภาษาควบคุมข้อมูล (Data Control Language, DCL)
- Bภาษาจัดการข้อมูล (Data Manipulation Language, DML)
- Cภาษาควบคุมทรานแซกชัน (Transaction Control Language, TCL)
- Dภาษานิยามข้อมูล (Data Definition Language, DDL)
4.ปานกลาง
SELECT SUM(amount) FROM orders คืนอะไรเมื่อ WHERE ไม่ตรงกับแถวใดเลย?
- Aข้อผิดพลาด
- BNULL
- Cสตริงว่าง
- D0
5.ปานกลาง
ตาราง a มี 3 แถว และตาราง b มี 4 แถว SELECT * FROM a CROSS JOIN b คืนกี่แถว?
- A7
- B3
- C12
- D4
6.ปานกลาง
คอลัมน์มีค่า 10, 20 และ NULL AVG(col) คืนค่าอะไร?
- A15
- B10
- CNULL
- D30
7.ยาก
การล็อกสองระยะ (two-phase locking, 2PL) รับประกัน:
- Aว่าทรานแซกชันไม่ต้องรอเลย
- Bว่า deadlock ไม่มีทางเกิดขึ้น
- Cตารางเวลาที่ conflict-serializable
- Dว่าไม่ต้องใช้ล็อก
8.ยาก
ฐานข้อมูลรายงานคัดลอกชื่อลูกค้าเข้าตาราง orders เพื่อเลี่ยงการเชื่อม ต้นทุนหลักของการทำดีนอร์มัลไลซ์นี้คืออะไร?
- Aคิวรีบนตาราง orders ช้าลง
- Bฐานข้อมูลใช้ดัชนีไม่ได้อีกต่อไป
- Cสำเนาซ้ำซ้อนต้องคงความสอดคล้องกันทุกครั้งที่ข้อมูลลูกค้าเปลี่ยน
- Dใช้คีย์หลักไม่ได้อีกต่อไป
เฉลย
- 1. C · ทุกชุดค่าผสมของแถวจากสองตาราง
- 2. D · WHERE
- 3. D · ภาษานิยามข้อมูล (Data Definition Language, DDL)
- 4. B · NULL
- 5. C · 12
- 6. A · 15
- 7. C · ตารางเวลาที่ conflict-serializable
- 8. C · สำเนาซ้ำซ้อนต้องคงความสอดคล้องกันทุกครั้งที่ข้อมูลลูกค้าเปลี่ยน
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com