Как искать в предложениях "или" в Sphinx? - PullRequest
1 голос
/ 04 марта 2011

У меня есть следующий индекс со сфинксом:

source src1
{
    type                    = mysql
    sql_host        = localhost
    sql_user        = ...
    sql_pass        = ...
    sql_db          = ....
    sql_port        = 3306  # optional, default is 3306
    sql_sock                =  /var/run/mysqld/mysqld.sock

    sql_query       = \
        SELECT anuncio_id,data_criacao,titulo,descricao,categoria1_titulo,categoria1_id,categoria2_titulo,categoria2_id,categoria3_titulo,categoria3_id,categoria4_titulo,categoria4_id FROM ccsprool_indice

    sql_field_string = titulo
    sql_field_string = descricao
    sql_field_string = categoria1_titulo
    sql_field_string = categoria2_titulo
    sql_field_string = categoria3_titulo
    sql_field_string = categoria4_titulo
    sql_attr_uint = categoria1_id
    sql_attr_uint = categoria2_id
    sql_attr_uint = categoria3_id
    sql_attr_uint = categoria4_id
    sql_attr_timestamp = data_criacao        
    sql_query_info          = SELECT * FROM ccsprool_indice WHERE anuncio_id=$id

}

index produtos_sprool
{
    source          = src1
    path            = /usr/local/sphinx/var/data/produtos_sprool
    docinfo         = extern
    mlock           = 0
    morphology      = none
    charset_type        = utf-8
    html_strip       = 1 
    min_word_len            = 3
    min_prefix_len          = 0
    min_infix_len           = 3
    wordforms = /usr/local/sphinx/data/wordforms.txt
}

Мне нужно проверить, находится ли элемент в категории: statoria1_id или categoryoria2_id, categoryoria3_id или categoryoria4_id

могу ли я сделать это с помощью Sphinx?

1 Ответ

1 голос
/ 07 марта 2011

Если я правильно понял задачу, это должно помочь:

$ cl-> SetSelect ('* ,ategori1_id = N или categoryoria__ = = N или categoryoria__ = = N или categoryor4_id = N как fil');$ cl-> SetFilter ('fil', array (1));

Это вернет все документы, у которых для одного из параметров statoria1_id / categoryoria2_id /ategoria3_id / categoryoria4_id задано значение N.

...