ฐานข้อมูลมีตาราง SalesReport (ReportID, SalespersonID, SalespersonName, RegionID, RegionName, TotalSales) หากต้องการทำให้เป็น 3NF พบว่า SalespersonName ขึ้นอยู่กับ SalespersonID และ RegionName ขึ้นอยู่กับ RegionID โดยทั้งคู่เป็น Transitive Dependency ผ่าน SalespersonID และ RegionID ควรแยกตารางอย่างไร
กแยกเป็น 2 ตาราง: Salesperson (SalespersonID, SalespersonName) และ Sales (ReportID, SalespersonID, RegionID, RegionName, TotalSales)
ขแยกเป็น 3 ตาราง: Salesperson (SalespersonID, SalespersonName), Region (RegionID, RegionName) และ SalesReport (ReportID, SalespersonID, RegionID, TotalSales)
คไม่ต้องแยก เพราะตารางผ่าน 2NF แล้ว
งแยกเป็น 2 ตาราง: Region (RegionID, RegionName) และ Sales (ReportID, SalespersonID, SalespersonName, RegionID, TotalSales)
เฉลยอธิบาย
3NF กำหนดว่าต้องไม่มี Transitive Dependency คือ Non-Key Attribute ต้องขึ้นอยู่กับ Primary Key โดยตรงเท่านั้น ในกรณีนี้ SalespersonName ขึ้นอยู่กับ SalespersonID และ RegionName ขึ้นอยู่กับ RegionID ต้องแยกทั้งสองออกเป็นตารางต่างหาก ทำให้ได้ 3 ตารางที่ผ่าน 3NF ตัวเลือก A ยังมี Transitive Dependency ของ RegionName เหลืออยู่ ตัวเลือก D ยังมี Transitive Dependency ของ SalespersonName เหลืออยู่ ส่วน B ผิดเพราะการผ่าน 2NF ไม่ได้หมายความว่าผ่าน 3NF ตัวเลือก C จึงขจัดทั้งสอง dependency ได้ครบ