>

mongodb를 쿼리하기 위해 laravel에서 jenssegers mongodb 패키지를 사용하고 있습니다. 아래 json 문서에서 게임과 일치하는 레코드를 크리켓으로 검색하는 방법

     {
       "_id": ObjectId("53402597d852426020000002"),
       "contact": "987654321",
       "dob": "01-01-1991",
       "gender": "M",
       "name": "Tom Benzamin",
       "user_name": “tombenzamin”,   
       “Personal_info”:[
            hobbies:{
                "games": "cricket",
                "favfilms": "lotr",
                "favfood": "burger"
            }
]
       }
    }


  • 답변 # 1

    whereRaw 를 사용할 수 있습니다   elemMatch 와 결합 된 방법 :

    DB::collection('users')->where(
        'Personal_info.hobbies',
        'elemMatch',
        [ 'games' => 'cricket' ]
    )->get()
    
    

  • 답변 # 2

    $crickets = DB::collection('games')->where('Personal_info.hobbies.games', 'cricket')->get();
    
    

    이와 같은 것이 작동해야합니다

관련 자료

  • 이전 파이썬의 루프가 제대로 작동하지 않습니까?
  • 다음 reactjs - nextJS에서 조건부 구성 요소를 ssr하는 방법은 무엇입니까?