ELI5: Explain Like I'm 5

Third normal form

Third normal form (3NF) is a way to organize information (like names, dates, and descriptions) so that it is organized in a clear and efficient way.

Imagine that you have a big bag with a bunch of toys in it. These toys could include balls, stuffed animals, and toy cars. It would be hard to find a specific toy if you didn't organize them in some way. So, you might decide to separate the toys into groups based on what they are. All the balls go in one pile, all the stuffed animals in another, and all the toy cars in yet another.

Similarly, when organizing information in a database, it's helpful to separate different pieces of information into their own groups, or tables. For example, imagine you have a database that stores information about employees at a company. You might have a table for employee names and another table for their job titles. This way, if you needed to find a list of employees in a particular job title, it would be a lot easier to find that information because it would all be in one place.

The third normal form takes this organization one step further by making sure that each table of information only contains information that is directly related to that table. Going back to our toy example, imagine you had a pile of all the balls, and then another pile of red things. If you sorted the ball pile by color, you would end up with some red balls in the ball pile, even though color isn't really relevant to the fact that they are balls.

Similarly, in a database, you want to make sure that each piece of information is only stored once and in the most appropriate table. For example, let's say you have a company database with a table for employees and their addresses. If you wanted to add a field for the employee's city, you wouldn't also want to include the state and country in that same table. Instead, you would want to create a new table just for locations, with fields for city, state, and country, and link that table to the employee table. This way, if you added a new employee who lived in the same city as another employee, you wouldn't have to duplicate that city name in the database every time.

In summary, the third normal form is a way of organizing information in a database so that each piece of information is only stored once and in the most appropriate table. It helps keep the database efficient and easy to use, like sorting toys into different piles based on what they are.
Related topics others have asked about: