Docs Menu
Docs Home
/ / /
Rust 드라이버
/

문서 찾기

find_one() 을( 를) 호출하여 컬렉션 에서 단일 문서 를 조회 할 Collection 있습니다. 인스턴스 의 메서드입니다.

쿼리 필터를 find_one() 메서드에 전달하여 컬렉션에서 필터와 일치하는 문서 하나를 반환합니다. 여러 문서가 쿼리 필터와 일치하는 경우 이 메서드는 데이터베이스의 기본 순서 또는 FindOneOptions 인스턴스에 지정된 정렬 순서에 따라 첫 번째로 일치하는 문서를 반환합니다.

메서드는 find_one() 다음을 반환합니다.Option<T> 여기서 T 는 인스턴스를 매개변수화한 유형입니다.Collection

문서 검색에 학습 보려면 데이터 검색 가이드 를 참조하세요.

이 예에서는 sample_restaurants 데이터베이스의 restaurants collection에서 쿼리 필터와 일치하는 문서를 조회합니다. 이 예제에서는 조회된 문서의 데이터로 Restaurant 구조체를 채웁니다.

이 예에서는 name 필드의 값이 "Tompkins Square Bagels" 인 문서와 일치하는 쿼리 필터를 사용합니다. MongoDB는 쿼리 필터와 일치하는 첫 번째 문서를 조회합니다.

Asynchronous 또는 Synchronous 탭을 선택하여 각 런타임에 해당하는 코드를 확인합니다.

use mongodb::{
bson::doc,
Client,
Collection
};
use serde::{ Deserialize, Serialize };
#[derive(Serialize, Deserialize, Debug)]
struct Restaurant {
name: String,
cuisine: String,
}
#[tokio::main]
async fn main() -> mongodb::error::Result<()> {
let uri = "<connection string>";
let client = Client::with_uri_str(uri).await?;
let my_coll: Collection<Restaurant> = client
.database("sample_restaurants")
.collection("restaurants");
let result = my_coll.find_one(
doc! { "name": "Tompkins Square Bagels" }
).await?;
println!("{:#?}", result);
Ok(())
}
Some(
Restaurant {
name: "Tompkins Square Bagels",
cuisine: "American",
},
)
use mongodb::{
bson::doc,
sync::{Client, Collection}
};
use serde::{ Deserialize, Serialize };
#[derive(Serialize, Deserialize, Debug)]
struct Restaurant {
name: String,
cuisine: String,
}
fn main() -> mongodb::error::Result<()> {
let uri = "<connection string>";
let client = Client::with_uri_str(uri)?;
let my_coll: Collection<Restaurant> = client
.database("sample_restaurants")
.collection("restaurants");
let result = my_coll.find_one(
doc! { "name": "Tompkins Square Bagels" }
).run()?;
println!("{:#?}", result);
Ok(())
}
Some(
Restaurant {
name: "Tompkins Square Bagels",
cuisine: "American",
},
)

돌아가기

사용 예시