Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

정규식을 사용하는 동안 MongoDB 성능 문제 방지


MongoDB에서 성능 문제를 피하려면 인덱스 개념을 사용하십시오. 문서로 컬렉션을 만들자 −

> db.demo531.createIndex({"국가명":"텍스트","이름":"텍스트"});{ "createdCollectionAutomatically" :true, "numIndexesBefore" :1, "numIndexesAfter" :2, "확인 " :1}> db.demo531.insertOne({국가명:"미국","이름":"크리스"});{ "승인됨":true, "insertedId":ObjectId("5e8b2b60ef4dcbee04fbbbf2")}> db.demo531 .insertOne({국가명:"영국","이름":"데이비드"});{ "확인된":true, "insertedId":ObjectId("5e8b2b6cef4dcbee04fbbbf3")}> db.demo531.insertOne({국가명:"AUS ","이름":"chris"});{ "승인됨":true, "insertedId":ObjectId("5e8b2b74ef4dcbee04fbbbf4")}> db.demo531.insertOne({국가명:"미국","이름":"CHRIS "});{ "승인됨" :true, "insertedId" :ObjectId("5e8b2badef4dcbee04fbbbf5")}

find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -

> db.demo531.find();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" :ObjectId("5e8b2b60ef4dcbee04fbbbf2"), "국가명":"미국", "이름":"크리스" }{ "_id":ObjectId("5e8b2b6cef4dcbee04fbbbf3"), "국가명":" , "이름":"데이비드" }{ "_id":ObjectId("5e8b2b74ef4dcbee04fbbbf4"), "국가 이름":"AUS", "이름":"chris" }{ "_id":ObjectId("5e8b2badef4dcbee04fbbbf5") CountryName" :"US", "Name" :"CHRIS" }

다음은 정규식을 사용하는 쿼리입니다 -

> db.demo531.find({국가명:"미국", "이름":{ "$regex":"chris", "$options":"i" }}).limit(4); 

이것은 다음과 같은 출력을 생성합니다 -

{ "_id":ObjectId("5e8b2b60ef4dcbee04fbbbf2"), "CountryName":"US", "Name":"Chris" }{ "_id":ObjectId("5e8b2badef4dcbee04fbbbf5"), "CountryName":"US , "이름" :"크리스" }