sql >> Databasteknik >  >> NoSQL >> MongoDB

ElasticSearch och sökning på flera fält i PHP

Det är på grund av hur PHP-matriser fungerar, du skriver över terms fråga varje gång, försök istället något i stil med:

array(
    'body' => array('query' => 
    'bool' => array(
        'must' => array(
            array('terms' => array('country' => implode(' ', $countries))),
            array('terms' => array('category' => implode(' ', $category))),
        )
    )
))

minimum_should_match är värdelös med must klausul i frågan.




  1. Mongoid samma inbäddade dokumenttyper för olika fält

  2. mangust rekursivt befolka

  3. MongoDB, Mongoose:Hur hittar man underdokument i hittat dokument?

  4. Minska poäng i Redis eller ta bort om 0