Some might know ten tricks, some might not know any. This is awkward, inefficient, and extremely untidy. Moving the tricks into a separate table helps considerably. Separating the repeating groups of tricks from the puppy information results in first normal form. The puppy number in the trick table matches the primary key in the puppy table, providing a foreign key for relating the two tables with a join operation.
Every puppy gets a unique number.
We'll add a row for every trick Trick Where Learned learned by every puppy. Eliminate Redundant Data. If an attribute depends on only part of a multi-valued key, remove it to a separate table. Just Trick ID would do. The same name will appear redundantly every time its associated ID appears in the Trick Table.