What Does Superkey Mean?
A superkey is a combination of columns that uniquely identifies any row within a relational database management system (RDBMS) table. A candidate key is a closely related concept where the superkey is reduced to the minimum number of columns required to uniquely identify each row.
Techopedia Explains Superkey
As an example, a table used to store customer master details could contain columns such as:
- Customer name
- Customer ID
- Social Security number (SSN)
- Address
- Date of birth
A certain set of columns may be extracted and guaranteed unique to each customer. Examples of superkeys are as follows:
- Name+SSN+Birthdate
- ID+Name+SSN
However, this process may be further reduced. It can be assumed that the customer ID is unique to each customer. Therefore, the superkey may be reduced to just one field, customer ID, which is the candidate key. However, to ensure absolute uniqueness, a composite candidate key may be formed by combining customer ID with SSN.