What is a Nested Loop?

Article Details
  • Originally Written By: C. Martin
  • Revised By: C. Mitchell
  • Edited By: C. Wilborn
  • Last Modified Date: 31 July 2018
  • Copyright Protected:
    Conjecture Corporation
  • Print this Article
Free Widgets for your Site/Blog
Research suggests that frequent hugs and perceived social support can help people avoid contracting the common cold.  more...

August 15 ,  2001 :  The first solar system other than our own was discovered.  more...

A nested loop is a logical structure used in computer programming and coding. It is characterized by two or more repeating statements that are placed in a "nested" form, which is to say that one “loop” or repeating command is situated within the body of the other. It is an efficient and in most cases relatively simple way for coders and programmers to cause sequential events and actions that build upon each other through an interrelated series of commands and signal switchbacks. Nested loops are a common part of most computer programs but can also be found in many situations where technology intersects with the presentation of some sort of information.

Why It’s Used

Looping is a powerful construct in programming as it allows rapid sorting or insertion of large amounts of data in an efficient way. Solving problems in the business world, for instance, or in manufacturing, often involves repeating an action over and over with hundreds, thousands, or even millions of individual pieces of data. As a resuly, loops are frequently used constructs in all kinds of computer programs in all types of industries.


Relationship Between Loops

The outer loop and any and all inner loops are related to each other in important ways. Not only are they connected, but they also take signals from each other and depend on each other for the translation and completion of various signals and digital tasks. The specifics tend to vary depending on application, but near constant communication is almost always a given.

In most cases the outer loop is what causes the inner loop to execute. The inner loop then repeats for as many times as is specified in the code or command materials. When the inner loop completes, the outer loop is executed for its second iteration, triggering the inner loop again, and so on until the requirements for the outer loop are complete.

Many computer programmers work in Structured Query Language (SQL), and nesting is of particular relevance in these cases. It essentially provides a means through which a person can quickly and efficiently search data in two linked tables. An outer loop is used to read the first table, one row of data at a time; then the data required to search the second table is passed to the inner loop, which reads the second table. As a result, the loop can process two linked tables in an efficient manner. Most of the time this all happens almost instantaneously.

Different Levels

The most basic loop is just two levels, though things can and often do get much more complicated. More than two loops can be nested, and they can go as deep as required to get a given job done. An easy way for many people to visualize the concept is by analogy to a car odometer. Imagining the leftmost digit of the odometer as the outermost loop is the best way for people to get started; from there, each successive digit can be considered another loop, each within the other, until one reaches the rightmost digit, which represents the innermost nested loop. In most cases, the more nesting there is, the more complex the underlying code or command.

How Loops Are Set Up

The exact looping process and initial structuring varies between programming languages. In SQL, for example, a programmer may script these structures and execute them either as a server nested loop that is called remotely or as one on a client machine that is executed locally. In order to use these powerful structures effectively, it is necessary to take into consideration both the language used by the program and the database or other backend that is being queried for the data.


You might also Like


Discuss this Article

Post 8







Post 7





Post 6

for (int i=6;i>0;i--)


for (int j=1;j<=i;j++)







Post 4

Use nested loops that print the following patterns:

Pattern I

1 2 3 4 5 6

1 2 3 4 5

1 2 3 4

1 2 3

1 2


Pattern II

1 2 3 4 5 6

1 2 3 4 5

1 2 3 4

1 2 3

1 2


Post 3

@nony - I think the loop that @Mammmood originally described in his example used a loop array, like a for-next loop, not do-while or anything like that.

The advantage of the for-next loop is that you don’t have to worry about a break point. Once the loop is done iterating through its elements, whether they be 1 to 100 or what have you, you’re done.

Post 2

@Mammmood - Yes, nested loops are used in every language. A C loop would probably use the do while loop construct, where the loop will continue while a certain condition continues to remain true.

A loop VB developers would use to accomplish the same task would be a Do While or Do Until construct, allowing the programmer to specify a condition that continues to be true or one which will define the loop break point, which is where the loop would end.

Post 1

I use nested loops a lot in my programming, and as this article explains, it comes in real handy with SQL. In one loop example I’ve done recently, I had to create a master loop of customer accounts in code, and then inside this loop I created another loop to iterate through orders or some other data that I was trying to retrieve.

The nested loop construct is probably one of the most common algorithms I use in my everyday coding, and I’ve used it in just about every programming language imaginable.

Post your comments

Post Anonymously


forgot password?