ไม่ใช่เลย.
หนึ่งในสถานการณ์จำลองที่พบบ่อยที่สุดสำหรับการแบ่งพาร์ติชันคือการใช้ฟิลด์วันที่ซึ่งไม่เกี่ยวข้องกับ PK ของคุณโดยสิ้นเชิง
ตัวอย่างเช่นถ้าคุณมีตารางOrders
ที่มีเขตข้อมูลที่คุณจะมีโอกาสมากที่สุดพาร์ติชันบนพื้นฐานของเดือนและปีของ OrderDate
OrderDate
เมื่อบันทึกอายุหมดลงและไม่มีความเกี่ยวข้องอีกต่อไปคุณสามารถย้ายพาร์ติชันเหล่านั้นออกไปยังตารางเก็บถาวรหรือฐานข้อมูลเพื่อไม่ให้มีการประมวลผลอีกต่อไป
การแบ่งพาร์ติชั่นจะทำงานกับฟิลด์ใดก็ได้ แต่เพื่อให้มันทำงานได้ดีฟิลด์ที่พาร์ติชั่นที่คุณใช้ควรจะใช้ในการค้นหาของคุณ หากคุณไม่รวมคีย์พาร์ติชันของคุณคุณจะได้รับการสแกนตารางที่มีราคาแพงซึ่งข้ามหลายตาราง (พาร์ติชัน)
แก้ไข
สำหรับตอนที่ 2 ฉันคิดว่าคำตอบก็ไม่ดีเช่นกัน คีย์พาร์ติชันใช้เพื่อกำหนดว่าพาร์ทิชันใดที่จะวางแถวเข้าไป แต่ฉันไม่คิดว่าจะมีการบำรุงรักษาดัชนี อาจมีสถิติในส่วนท้ายของมัน
Partition columns for a unique index must be a subset of the index key.