SQL Clone
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 

Job Interviews: What is Normalization?

By Steve Jones,

This is part of a series that looks at interview questions that you might be asked.

One of the cornerstones of a relational database is normalization. This is a database design technique that is used to decide how we might distribute data among tables and columns. If someone were to ask you "what is normalization" in your next job interview, what would you say? How do you answer this question?

Depending on the position, and your experience, perhaps you'd talk about this in practical terms, with an example. Maybe you have a scenario you use to explain the concepts. I tend to lean towards an e-commerce type database, with orders, customers, and products. That's an easy concept for people to grasp. I can then give examples of how normalization might change the way we store data.

Do you know there are various forms of normalization? We can talk about first, second, third, fourth, or other normal forms of the database. Perhaps you can explain these from memory? Maybe you know the academic definitions. Maybe you have your own description. I certainly think if the position may involve designing tables that you should be able to talk about the differences between these forms and determine what form a particular database is in.

My answer would include quick explanations of how I would avoid repeating groups, columns not dependent on the PK, and how sometimes the third normal form starts to impact performance because of the number of joins required for simple queries. I would also be ready to expand on these topics, explaining what a PK is and how to choose one.

This is a complex topic,and I doubt an interviewer would expect anyone to provide a thirty minute lecture, which wouldn't completely cover the topic. Instead, I would think that if an interviewer is interested in this topic, they will ask probing questions to determine if you understand the concepts. This means you can't just memorize the definition. You should ensure that if I have you a table, you could break it down into the entities for 1st, 2nd, and 3rd normal form. Perhaps you should read a few basic articles to get some understanding. Maybe you need to delve a little deeper into design and the anomalies that normalization attempts to mitigate.

Prepping for an interview shouldn't be a cram session to learn more, but really a review of concepts you understand. Make sure you have some examples to explain your thoughts and practice a few of these questions with a friend by giving them an answer and listening to their feedback.

 
Total article views: 111 | Views in the last 30 days: 111
 
Related Articles
FORUM

Interview

Interview

FORUM

Normalization

Need Some example to do normalized database

FORUM

understand following concepts of resouce database:

understand following concepts of resouce database:

ARTICLE

Would You Like a Stay Interview?

For this Friday poll, Steve Jones talks about an interesting concept. The "stay interview."

BLOG

Normalizing Your Database

If you’ve been working with databases for any length of time, you have heard the term normalization....

Tags
career    
editorial    
job interviews    
 
Contribute