Difference between Super Key and Candidate key


Both Super Key and Candidate key are used to uniquely identify a record in a table. These keys are also used to create relationship between tables. Both keys can have null values. Both concepts are important for database design and management.

Read this article to find out more about super key and candidate key and how they are different from each other.

What is a Super Key?

In relational databases, a single attribute (or a set of attributes) that are used to uniquely identify all attributes in a relation is referred to as a super key. For example, a super key for a "students" table may consist the attributes "roll number" and "student ID", even though any one of these attributes is sufficient to uniquely identify a student.

A super key is a basic key of any relation that can identify all attributes in the relation. In every relation, there must be at least one or more than one super key.

A minimal super key is known as a candidate key, therefore, we may state that some of the super keys can be verified for being a candidate key. But all super keys cannot be candidate keys. It also remembers that two entities cannot have the same values for the attributes that compose a super key.

What is a Candidate Key?

Candidate key is also a unique key to identify a record uniquely in a table but a table can have multiple candidate keys. The candidate key column can have null value. A candidate key may or may not have a primary key.

A candidate key is basically a subset of super key. It a minimal set of attributes that can be used to uniquely identify a tuple in a table. Thus, all candidate keys are super keys. For example, the candidate key for a "student" table would have only one attribute "roll number" or "student ID" (not both) because any one of these attributes can uniquely identify a student.

In a given relation, the number of candidate keys is always less than the super keys. We can combine multiple candidate keys together to create a primary key.

Difference between Super Key and Candidate key

The following are the important differences between a Super Key and a Candidate Key −

Key Super Key Candidate Key
Definition Super Key is used to identify all the records in a relation. Candidate key is a subset of Super Key.
Use All super keys can't be candidate keys. All candidate keys are super keys.
Selection Super keys are combined together to create a candidate key. Candidate keys are combined together to create a primary key.
Count Wise Super keys are more than Candidate keys. Candidate keys are less than Super Keys.

Conclusion

A super key is the basic key in any database table. Candidate keys are also important in a relation because they help in identifying the most important key (called the primary key) of the table. A set of super keys in a relation forms the base for selecting candidate keys, while a set of candidate keys forms the base for selecting a primary key of the relation.

In general, a super key is a broader concept than a candidate key. A candidate key is a specific type of super key that consists of the minimal set of attributes needed to uniquely identify a row.

Updated on: 21-Dec-2022

7K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements