Místo jednoho řádku pro každý film použijte tabulku hodnot atributů. Poté k tomu přidejte další pole, které specifikuje uživatele, což by bylo 0
pro původní výchozí nastavení. Tabulka tedy vypadá takto:
MovieID UserID Attribute Value
1 0 Title 12 Monkeys
1 0 Format DVD
1 1 Title Twelve Monkeys
Pak by dotaz na získání názvu vypadal takto:
SELECT MovieID, IFNULL(my.Value, default.Value) AS title
FROM movies AS default
LEFT JOIN movies AS my ON default.MovieID = my.MovieID AND my.Attribute = 'Title' AND my.userID = @user
WHERE default.UserID = 0 AND default.Attribute = 'Title'
Někteří návrháři databází také rádi používají AttributeID
spíše než řetězec jako název atributu a samostatnou tabulku, která mapuje názvy atributů na ID.