title: Approach to multiple MySQL queries with Node.js
body: <p>I'm a newbie both on event/callback style programming and NodeJS. I'm trying to implement a little http server which serves ddbb data using node-mysql module.</p>
  
  <p>My problems comes from queries structuration. Since there are often queries that require results from previous queries to run, I am not able to run all them simultaneously (asynchronously) and I am forced to wait some results.</p>
  
  <p>My first approach was to run all the non-dependant queries at the same time and then loop until all of them have set a flag up saying I'm done so I can continue with the dependant (synchronized) ones, but I don't know if this is the correct approach.</p>
  
  <p>Something like this:</p>
  
  <pre><code>function x(){
      var result_for_asynch_query_1 = null
      var result_for_asynch_query_2 = null
  
      mainLoop(){
          // call non-dependant query 1
          // call non-dependant query 2
  
          // loop until vars are != null
  
          // continue with queries that require data from the first ones
      }
  }
  
  //for each browser request
  httpServer{
       call_to_x();
  }.listen();
  </code></pre>
  
  <p>This way I can save some time in the final result since I don't wait all responses in a serial way but just to the longest one.</p>
  
  <p>Is there a common way to do this? Any design pattern I'm not following?</p>