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

$regex에서 MongoDB 필드 값을 패턴으로 사용할 수 있습니까?

<시간/>

예, $indexOfCP를 사용하여 필드 값을 패턴으로 사용할 수 있습니다. 문서로 컬렉션을 만들자 −

> db.demo88.insertOne(... {... "이름":"Chris",... "PassoutYear":"2020",... "websiteName":"chris.shop.com/ Carol-2020-"... }... );{ "승인됨" :true, "insertedId" :ObjectId("5e2c14c471bf0181ecc422b1")}> db.demo88.insertOne(... {... "이름":"David",... "PassoutYear":"2010",... "websiteName":"david.bigshop.com/David-2010-"... }... );{ "승인됨":true, "insertedId" :ObjectId("5e2c14c571bf0181ecc422b2")}

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

> db.demo88.find();

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

{ "_id" :ObjectId("5e2c14c471bf0181ecc422b1"), "이름":"크리스", "PassoutYear":"2020", "websiteName":"chris.shop.com/Carol-2020-" }{ " _id":ObjectId("5e2c14c571bf0181ecc422b2"), "이름":"David", "PassoutYear":"2010", "websiteName":"david.bigshop.com/David-2010-" }

다음은 $regex −

에서 필드 값을 패턴으로 사용하는 쿼리입니다.
> db.demo88.aggregate([ { "$match":{ "$expr":{ "$ne":[ { "$indexOfCP":["$websiteName", "$Name"] }, - 1 ] } }} ])

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

{ "_id":ObjectId("5e2c14c571bf0181ecc422b2"), "Name":"David", "PassoutYear":"2010", "websiteName":"david.bigshop.com/David-2010-" }