title: How to project whether field exists
body: <p>If I have documents with similar structure as below. I am updating them with the results of the computations and I want to know whether the result has already been inserted into a document or not. Let's say for each document I run computation 'c' and computation 'd'. Now I want to display a table of all documents and show whether a computation 'd' has been already carried out. And for this table I do not care about computation 'c'. </p>
  
  <pre><code>{
  "_id":1
  "a":1,
  "resultsOfComputation":{
     "c":{large embedded document},
     "d":{large embedded document}   
     }
  }
  
  {
  "_id":2
  "a":1,
  "resultsOfComputation":{
     "c":{large embedded document}
     }
  }
  </code></pre>
  
  <p>I would like to get a result that tells me whether a document contains a specific field. For example, I would like to know whether it contains field "resultsOfComputation.d", no matter what is the value of that field.</p>
  
  <p>An example of the result of the query for "resultsOfComputation.d" would be:</p>
  
  <pre><code>{
  "_id":1
  "a":1,
  "resultsOfComputation":{
     "d":true   
     }
  }
  
  {
  "_id":2
  "resultsOfComputation":{
     "d":false
     }
  }
  </code></pre>
  
  <p>If "resultsOfComputation.d" is not in the document it can also be undefined, which is also ok:</p>
  
  <pre><code>{
  "_id":1
  "a":1,
  "resultsOfComputation":{
     "d":true   
     }
  }
  
  {
  "_id":2
  "a":1,
  "resultsOfComputation":{}
  }
  </code></pre>
  
  <p>In general, the idea is to get all the root elements of the documents, but only true/false/undefined for the selected (one) result of computation, since the result of computation is a large embedded document.</p>