1.ง่าย
WHERE price BETWEEN 10 AND 20 เลือกแถวใด?
- Aแถวที่ price อยู่นอกช่วง 10 ถึง 20
- Bแถวที่ price ตั้งแต่ 10 ถึง 20 รวม 10 และ 20
- Cเฉพาะแถวที่ price เท่ากับ 10 หรือ 20
- Dแถวที่ price มากกว่า 10 และน้อยกว่า 20 โดยไม่รวม 10 และ 20
2.ง่าย
ลูกค้าหนึ่งคนสั่งซื้อได้หลายคำสั่ง แต่แต่ละคำสั่งซื้อเป็นของลูกค้าเพียงคนเดียว นี่เป็นความสัมพันธ์ประเภทใด?
- Aหนึ่งต่อหนึ่ง (one-to-one)
- Bหลายต่อหลาย (many-to-many)
- Cศูนย์ต่อศูนย์
- Dหนึ่งต่อหลาย (one-to-many)
3.ง่าย
INNER JOIN ให้ผลลัพธ์เป็น:
- Aแถวที่ไม่ตรงกัน
- Bทุกแถวจากทั้งสองตาราง
- Cเฉพาะแถวที่มีค่าตรงกันในทั้งสองตาราง
- Dทุกแถวจากตารางซ้าย โดยมี NULL ในส่วนที่ไม่มีค่าตรงกัน
4.ปานกลาง
คีย์นอกถูกประกาศด้วย ON DELETE CASCADE เกิดอะไรขึ้นเมื่อแถวแม่ถูกลบ?
- Aการลบถูกปฏิเสธเสมอ
- Bคีย์นอกในแถวลูกถูกตั้งเป็น NULL โดยอัตโนมัติ
- Cแถวแม่ถูกคัดลอกไปยังตารางเก็บถาวร
- Dแถวลูกที่อ้างอิงแถวนั้นถูกลบโดยอัตโนมัติ
5.ปานกลาง
INTERSECT คืนอะไรเมื่อใช้ระหว่างคิวรี SELECT สองคิวรี?
- Aทุกแถวจากทั้งสองผลลัพธ์
- Bผลคูณคาร์ทีเซียนของผลลัพธ์
- Cแถวที่ปรากฏในทั้งสองผลลัพธ์
- Dแถวในผลลัพธ์แรกที่ไม่อยู่ในผลลัพธ์ที่สอง
6.ปานกลาง
รูปแบบบรรทัดฐานที่สาม (3NF) ขจัด:
- Aค่าอะตอมมิก
- Bดัชนีที่ซ้ำซ้อนบนคอลัมน์ที่ไม่ได้เป็นส่วนของคีย์
- Cการพึ่งพาแบบถ่ายทอดระหว่างแอตทริบิวต์ที่ไม่ใช่คีย์
- Dคีย์ประกอบ
7.ยาก
การแยก R เป็น R1 และ R2 รับประกันว่าไม่สูญเสียเมื่อใด?
- Aเมื่อ R1 และ R2 ไม่มีแอตทริบิวต์ร่วมกัน
- Bเมื่อแอตทริบิวต์ร่วมของ R1 และ R2 เป็นซูเปอร์คีย์ของ R1 หรือของ R2
- Cเมื่อ R1 และ R2 มีจำนวนคอลัมน์เท่ากัน
- Dเมื่อทุกแอตทริบิวต์ของ R ปรากฏในทั้ง R1 และ R2
8.ยาก
ฟีเจอร์ SQL ใดเหมาะที่สุดสำหรับหาพนักงานทุกคนใต้ผู้จัดการในแผนภูมิองค์กรที่ไม่ทราบความลึก?
- Aข้อจำกัด UNIQUE บน manager_id
- BCTE แบบเรียกซ้ำ (WITH RECURSIVE)
- CGROUP BY บน manager_id
- Dself-join ของตาราง employees บน manager_id เพียงครั้งเดียว
เฉลย
- 1. B · แถวที่ price ตั้งแต่ 10 ถึง 20 รวม 10 และ 20
- 2. D · หนึ่งต่อหลาย (one-to-many)
- 3. C · เฉพาะแถวที่มีค่าตรงกันในทั้งสองตาราง
- 4. D · แถวลูกที่อ้างอิงแถวนั้นถูกลบโดยอัตโนมัติ
- 5. C · แถวที่ปรากฏในทั้งสองผลลัพธ์
- 6. C · การพึ่งพาแบบถ่ายทอดระหว่างแอตทริบิวต์ที่ไม่ใช่คีย์
- 7. B · เมื่อแอตทริบิวต์ร่วมของ R1 และ R2 เป็นซูเปอร์คีย์ของ R1 หรือของ R2
- 8. B · CTE แบบเรียกซ้ำ (WITH RECURSIVE)
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com