title: What's the $unwind operator in MongoDB?
body: <p>This is my first day with MongoDB so please go easy with me :)</p>
  
  <p>I can't understand the <code>$unwind</code> operator, maybe because English is not my native language.</p>
  
  <pre><code>db.article.aggregate(
      { $project : {
          author : 1 ,
          title : 1 ,
          tags : 1
      }},
      { $unwind : "$tags" }
  );
  </code></pre>
  
  <p>The project operator is something I can understand, I suppose (it's like <code>SELECT</code>, isn't it?). But then, <code>$unwind</code> (citing) <em>returns one document for every member of the unwound array within every source document</em>.</p>
  
  <p>Is this like a <code>JOIN</code>? If yes, how the result of <code>$project</code> (with <code>_id</code>, <code>author</code>, <code>title</code> and <code>tags</code> fields) can be compared with the <code>tags</code> array?</p>
  
  <p><strong>NOTE</strong>: I've taken the example from MongoDB website, I don't know the structure of <code>tags</code> array. I think it's a simple array of tag names.</p>