title: Specifying a query in MongoDB using Go
body: <p>Confused about how to translate the Javascript JSON commands back into something go will understand. </p>
  
  <p>Ok so here's the query in the mongo shell:: </p>
  
  <pre><code>db.customers.find({acct_balance:{$gt:100000}}, {firstName: 1, surname:1, acct_balance:1, _id:0})
  </code></pre>
  
  <p>Results :: </p>
  
  <p>{ "firstName" : "Susann", "surname" : "Ulisch", "acct_balance" : 238897.45}
  { "firstName" : "Parker", "surname" : "Peet", "acct_balance" : 443314.13 }</p>
  
  <p>Now I wanted to replicate that query in Go.</p>
  
  <pre><code>c := session.DB("mydb").C("customers")
  query := []bson.M{}
  query["firstName"] = append(bson.M{"firstName": "1"})
  query["surname"] = append(bson.M{"surname": "1"})
  query["$gte"] = []bson.M{}
  query["$gte"] = append(query["$gte"].([]bson.M), bson.M{"acct_bal": 100000})
  </code></pre>
  
  <p>Is there a way to easily translate JSON queries from the mongo shell back to something that you can use in Go? There is some confusion in my mind as to how you use the $gte, $lte key words back into something for go format. </p>