내 synfony 2 프로젝트에서 쿼리 빌더를 사용하여 검색 결과를 필터링하고 있습니다. 내 MongoDB에는 배열에 몇 가지 값이 있습니다.ODM Query Builder : "in in"연산자 또는 이와 동등한 연산이 있습니까?
Query Bulider에는 배열의 여러 값 중 하나와 같은 값을 쿼리 할 수있는 "in"연산자가 있습니다. 나는 반대 값 연산을 수행하기를 원했다. 즉, 하나의 값이 주어지면 배열을 포함하는 데이터베이스의 엔트리에 대한 쿼리가 내 값을 포함하고 싶다.
{
"_id": 123,
"name": "John",
"countries_visited":
[
"Australia"
"Bulgaria",
"Canada"
]
}
내가 "캐나다"를 방문한 사람에 대한 내 데이터베이스를 조회 할 : 예를 들어
, 나는 내 MongoDB의에서이 항목을 말한다. 지금은 where
속성을 다음과 같이 사용하고 있지만 더 좋은 방법을 찾고 있습니다.
$qb->field('countries_visited')->where("function(){
return this.indexOf(".$countryName.") > -1
}");
편집 : 가 in
및 notIn
오퍼레이터 파라미터로 배열 MongoDB를 수신하고 단일 값과 비교한다. 하나의 매개 변수를 제공하고 그것을 MongoDB의 배열 필드에 적용 할 필요가 있습니다. 그런 일이 있으면 contains
연산자가 필요합니다.
나는'notIn은()': –
아니, 읽어 보시기 바랍니다 후에 당신이있어 어떤 것이라고 생각했을 것이다 전체 설명이 제목이 아니라 처음입니다. – ecc
나는 그것을했고 그것을 이해하지 못한다. –