| Async Runtime | let result = collection.find_one(doc! { "title": "Peter Pan" }).await?; |  
 
 Sync Runtime | let result = collection.find_one(doc! { "title": "Peter Pan" }).run()?; |  
 
  | 
 | Async Runtime | let filter = doc! { "year": 1925 }; |  | let mut cursor = collection.find(filter).await?; |  
 
 Sync Runtime | let filter = doc! { "year": 1925 }; |  | let mut cursor = collection.find(filter).run()?; |  
 
  | 
 | Async Runtime | let doc = doc! { |  |     "title": "Mistress America", "type": "movie" |  | }; |   |  | let result = collection.insert_one(doc).await?; |  
 
 Sync Runtime | let doc = doc! { |  |     "title": "Mistress America", "type": "movie" |  | }; |   |  | let result = collection.insert_one(doc).run()?; |  
 
  | 
Insert Multiple Documents 
 
  | Async Runtime | let docs = vec![ |  |     doc! { "title": "Friends With Money", "runtime": 88 }, |  |     doc! { "title": "Please Give", "runtime": 90 }, |  |     doc! { "title": "You Hurt My Feelings", "runtime": 93 }, |  | ]; |   |  | let result = collection.insert_many(docs).await?; |  
 
 Sync Runtime | let docs = vec![ |  |     doc! { "title": "Friends With Money", "runtime": 88 }, |  |     doc! { "title": "Please Give", "runtime": 90 }, |  |     doc! { "title": "You Hurt My Feelings", "runtime": 93 }, |  | ]; |   |  | let result = collection.insert_many(docs).run()?; |  
 
  | 
 | Async Runtime | let filter = doc! { "title": "Burn After Reading"}; |  | let update = doc! { |  |         "$set": doc!{ "num_mflix_comments": 1 } |  | }; |   |  | let result = collection.update_one(filter, update).await?; |  
 
 Sync Runtime | let filter = doc! { "title": "Burn After Reading"}; |  | let update = doc! { |  |         "$set": doc!{ "num_mflix_comments": 1 } |  | }; |   |  | let result = collection.update_one(filter, update).run()?; |  
 
  | 
Update Multiple Documents 
 
  | Async Runtime | let filter = doc! { "rated": "PASSED"}; |  | let update = doc! { |  |         "$set": doc!{ "rated": "Not Rated" } |  | }; |   |  | let result = collection.update_many(filter, update).await?; |  
 
 Sync Runtime | let filter = doc! { "rated": "PASSED"}; |  | let update = doc! { |  |         "$set": doc!{ "rated": "Not Rated" } |  | }; |   |  | let result = collection.update_many(filter, update).run()?; |  
 
  | 
 | Async Runtime | let filter = doc! { "title": "è Nous la Libertè" }; |  | let replacement = doc! { |  |     "title": "À nous la liberté", |  |     "type": "movie", |  |     "directors": vec! [ "René Clair" ] |  | }; |   |  | let result = collection.replace_one(filter, replacement).await?; |  
 
 Sync Runtime | let filter = doc! { "title": "è Nous la Libertè" }; |  | let replacement = doc! { |  |     "title": "À nous la liberté", |  |     "type": "movie", |  |     "directors": vec! [ "René Clair" ] |  | }; |   |  | let result = collection.replace_one(filter, replacement).run()?; |  
 
  | 
 | Async Runtime | let filter = doc! { "title": "Search and Destroy" }; |  | let result = collection.delete_one(filter).await?; |  
 
 Sync Runtime | let filter = doc! { "title": "Search and Destroy" }; |  | let result = collection.delete_one(filter).run()?; |  
 
  | 
Delete Multiple Documents 
 
  | Async Runtime | let filter = doc! { |  |     "year": doc! { "$lt": 1920 } |  | }; |   |  | let result = collection.delete_many(filter).await?; |  
 
 Sync Runtime | let filter = doc! { |  |     "year": doc! { "$lt": 1920 } |  | }; |   |  | let result = collection.delete_many(filter).run()?; |  
 
  | 
Access Data from a Cursor Iteratively 
 
  | Async Runtime | let mut cursor = collection |  |     .find(doc! { "$and": vec! |  |     [ |  |         doc! { "metacritic": doc! { "$gt": 90 } }, |  |         doc! { "directors": vec! [ "Martin Scorsese" ] } |  |     ] }) |  |     .await?; |   |  | while let Some(result) = cursor.try_next().await? { |  |     println!("{}", result); |  | } |  
 
 Sync Runtime | let cursor = collection |  |     .find(doc! { "$and": vec! |  |     [ |  |         doc! { "metacritic": doc! { "$gt": 90 } }, |  |         doc! { "directors": vec! [ "Martin Scorsese" ] } |  |     ] }) |  |     .run()?; |   |  | for result in cursor { |  |     println!("{}", result?); |  | } |  
 
  | 
Access Data from a Cursor as an Array 
 
  | Async Runtime | let cursor = collection.find(doc! { "title": "Secrets & Lies" }).await?; |   |  | let results: Vec<Document> = cursor.try_collect().await?; |  
 
 Sync Runtime | let cursor = collection.find(doc! { "title": "Secrets & Lies" }).run()?; |   |  | let results: Vec<Result<Document>> = cursor.collect(); |  
 
  | 
 | Async Runtime | let filter = doc! { |  |     "languages": vec! [ "Mandarin" ] |  | }; |   |  | let result = collection.count_documents(filter).await?; |  
 
 Sync Runtime | let filter = doc! { |  |     "languages": vec! [ "Mandarin" ] |  | }; |   |  | let result = collection.count_documents(filter).run()?; |  
 
  | 
List Distinct Values of a Field 
 
  | Async Runtime | let field_name = "title"; |  | let filter = doc! { |  |     "directors": vec! [ "Sean Baker" ] |  | }; |   |  | let results = collection.distinct(field_name, filter).await?; |  
 
 Sync Runtime | let field_name = "title"; |  | let filter = doc! { |  |     "directors": vec! [ "Sean Baker" ] |  | }; |   |  | let results = collection.distinct(field_name, filter).run()?; |  
 
  | 
Limit the Number of Documents Retrieved 
 
  | Async Runtime | let filter = doc! { "awards.wins": 25}; |  | let mut cursor = collection.find(filter).limit(5).await?; |  
 
 Sync Runtime | let filter = doc! { "awards.wins": 25}; |  | let mut cursor = collection.find(filter).limit(5).run()?; |  
 
  | 
 | Async Runtime | let filter = doc! { "runtime": 100 }; |  | let mut cursor = collection.find(filter).skip(1).await?; |  
 
 Sync Runtime | let filter = doc! { "runtime": 100 }; |  | let mut cursor = collection.find(filter).skip(1).run()?; |  
 
  | 
Sort the Documents When Retrieving Them 
 
  | Async Runtime | let filter = doc! { |  |     "directors": vec! [ "Nicole Holofcener" ] |  | }; |   |  | let mut cursor = collection |  |     .find(filter) |  |     .sort(doc! { "imdb.rating": 1 }) |  |     .await?; |  
 
 Sync Runtime | let filter = doc! { |  |     "directors": vec! [ "Nicole Holofcener" ] |  | }; |   |  | let mut cursor = collection |  |     .find(filter) |  |     .sort(doc! { "imdb.rating": 1 }) |  |     .run()?; |  
 
  | 
Project Document Fields When Retrieving Them 
 
  | Async Runtime | let filter = doc! { "year": 2015 }; |  | let mut cursor = collection |  |     .find(filter) |  |     .projection(doc! { "title": 1, "metacritic": 1, "_id": 0 }) |  |     .await?; |  
 
 Sync Runtime | let filter = doc! { "year": 2015 }; |  | let mut cursor = collection |  |     .find(filter) |  |     .projection(doc! { "title": 1, "metacritic": 1, "_id": 0 }) |  |     .run()?; |  
 
  | 
 | Async Runtime | let index: IndexModel = IndexModel::builder().keys(doc! { "title": 1 }).build(); |   |  | let result = collection.create_index(index).await?; |  
 
 Sync Runtime | let index: IndexModel = IndexModel::builder().keys(doc! { "title": 1 }).build(); |   |  | let result = collection.create_index(index).run()?; |  
 
  |