2012-11-27 2 views
0

mongodb에 대한 긴 쿼리가 있습니다. 나는 PHP로 변환 할 mongodb를 '와'를 사용하여 PHP로 변환

"department":"xxx","rank":"xxx", 
$and:[{"emails.email" :{$ne : ""}},{"emails.email":{$ne:null}}]; 

으로 PHP 에 쿼리 보이는 것을 쓰고 싶어요.

"department"=> $ xxx, "rank"=> $ xxx .. ?? '및'나는 변환 할 수 없습니다. 제발 도와주세요

답변

2

$ 수정자를 사용하는 가장 좋은 방법은 아래와 같이 작은 따옴표를 사용하는 것입니다. 문법에 가깝지만, 놓친 대괄호가있을 수도 있다는 것을 확신 할 수 있으므로 두 번 확인하고 싶을 것입니다.

array(
    'department'=>'', 
    'rank=>'', 
    '$and'=>array(
    'emails.email'=>array('$ne'=>''), 
    'emails.email'=>array('$ne'=>NULL) 
) 
); 

행운을 비네!

1

@Frederico가 작성한 쿼리를 커밋 할 수 있지만이 쿼리는 일부 최적화 작업을 수행 할 수 있습니다.

array(
    'department' => '', 
    'rank' => '', 
    'emails.email' => array('$nin' => array('', null)) 
) 

$and과 두 개의 별도의 $ne없는만큼 좋은 일을 할 것입니다 : 여기 제안입니다.