duancong7573 2013-11-26 18:05
浏览 62

PHP&MONGO:嵌套查找查询$和$或$ ne

I am trying to make a query where I want to retrieve items querying a field in the database. I need to check something as follows (example):

To retrieve books where the text field contain "Soccer" or "Basketball":

I want to have the items where only in the population above:

contain '1989'

and

exclude 'Europe'

Any idea? I am doing a counting for now but it does not work:

    //search words
    foreach ($cardSearch as $value) {
        $regexSearch[]['text'] = new MongoRegex("/" . $value . "/");
    }

    //words included
    foreach ($cardInclu as $value) {
        $regexInclu[]['text'] = new MongoRegex("/" . $value . "/");
    }

    //words excluded
    foreach ($cardExlu as $value) {
        $regexExclu[]['text'] = new MongoRegex("/" . $value . "/");
    }

    $arr['$and'] = $regexInclu;
    $arr['$ne'] = $regexExclu;
    array_push($regexSearch, $arr);

    $i = $mongoCollection->count(array('$or' => $regexSearch));

or

    $i = $mongoCollection->count(array('$or' => $regexSearch, 
         '$and' => $regexInclu, '$ne' => $regexExclu));

Thanks!

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 对于这个复杂问题的解释说明
    • ¥50 三种调度算法报错 有实例
    • ¥15 关于#python#的问题,请各位专家解答!
    • ¥200 询问:python实现大地主题正反算的程序设计,有偿
    • ¥15 smptlib使用465端口发送邮件失败
    • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
    • ¥15 对于squad数据集的基于bert模型的微调
    • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
    • ¥20 steam下载游戏占用内存
    • ¥15 CST保存项目时失败