Flattening data for the end user

SQL databases are usually big complex beasts. An end user knows they have the information in the system, but it often proves too complex to extract it in a useable form.

We can use a number of tools to provide a company with data in a form they can use.

What do I mean by “flattening” the data?

A database designer works to “normalise” a database. This means removing any repeating data from a table and placing it in its own table.

For example a stock record:

Stock Code
Stock Description
Stock Category
Stock Category Description
Stock Category Discount Level
Stock price

 

Would be normalised into two tables:

Stock Code
Stock Description
Stock Category Code
Stock price

 

Stock Category Code
Stock Category Description
Stock Category Discount Level

 

By “joining” these two tables, they can appear as one, but when a change is required on a discount level, only one record needs to be amended, instead of all of the stock table.

This is a simple example, but it highlights the most frequent issue facing an amateur report writer. “How can I include the details from both tables on a single report?”

We would ask if the report writer needs to know how? If we provide a “view” of the data, we can offer the report writer the data joined correctly and displaying the fields they need.