Gegeben

R = { ABCDEF } , FD = { AF
CEFAB
AEB
BCD
AFC }

Schlüsselkandidaten

Alle Attribute, die nicht auf der rechten Seite einer Abhängigkeit auftauchen, müssen in jedem Schlüsselkandidaten vorhanden sein. Es sind die sicheren Schlüsselattribute.

R = { ABCDEF } , FD = { AF
CEFAB
AEB
BCD
AFC }

⇒ Sichere Schlüsselattribute = { E }

Alle Attribute, die auf beiden Seiten zu finden sind, gehören zu den möglichen Schlüsselattributen von Schlüsselkandidaten.

R = { ABCDEF } , FD = { AF
CEFAB
AEB
BCD
AFC }

⇒ Mögliche Schlüsselattribute = { ABCF }

Die minimale Länge der Schlüsselkandidaten ist durch die sicheren Schlüsselattribute gegeben, da in jedem Schlüsselkandidaten mindestens alle sicheren Schlüsselattribute vorkommen müssen. Bilden die sicheren Schlüsselattribute bereits einen Schlüsselkandidaten, so ist dies der einzig mögliche. Ansonsten müssen aus den möglichen Schlüsselattributen der Reihe nach alle einelementigen, zweielementigen usw. Teilmengen zu den sicheren Schlüsselattributen hinzugefügt und überprüft werden, ob dadurch ein Schlüsselkandidat entstanden ist. Die sich dabei ergebenden Kombinationen müssen nicht überprüft werden, wenn sie einen bereits gefundenen Schlüsselkandidat enthalten (diese Kombinationen wären nicht minimal).

Attributhülle E+ = { } ≠ R

Attributhülle AE+ = { AE → AEF = AEF → ABEF = ABEF → ABCEF = ABCEF → ABCDEF } = R ⇒ Schlüsselkandidat

Attributhülle BE+ = { } ≠ R

Attributhülle CE+ = { } ≠ R

Attributhülle EF+ = { } ≠ R

Attributhülle BCE+ = { BCE → BCDE } ≠ R

Attributhülle BEF+ = { } ≠ R

Attributhülle CEF+ = { CEFABCEF = ABCEF → ABCDEF } = R ⇒ Schlüsselkandidat

⇒ Schlüsselkandidaten = { AE , CEF }