<database> A series of steps followed to obtain a database design that allows for efficient access and storage of data in a relational database. These steps reduce data redundancy and the chances of data becoming inconsistent.
A table in a relational database is said to be in normal form if it satisfies certain constraints. Codd's original work defined three such forms but there are now five generally accepted steps of normalisation. The output of the first step is called First Normal Form (1NF), the output of the second step is Second Normal Form (2NF), etc.
First Normal Form eliminates repeating groups by putting each value of a multi-valued attribute into a new row.
Third Normal Form eliminates functional dependencies on non-key fields by putting them in a separate table. At this stage, all non-key fields are dependent on the key, the whole key and nothing but the key.
Fourth Normal Form separates independent multi-valued facts stored in one table into separate tables.
Fifth Normal Form breaks out data redundancy that is not covered by any of the previous normal forms.
[What about non-relational databases?]