如何在sphinx搜索源conf中为非索引mysql表提供非id WHERE条件

时间:2014-01-24 14:36:32

标签: sphinx

我目前正在使用sphinx索引一个mysql表。我希望索引通过在查询中给出条件而不是id。

我的 sql_query

SELECT id, group_id, concat(ifnull(title, ""), ifnull(tags, "")) \
                FROM items \
                 WHERE group_id in (262, 147, 165, 190, 256, 272, 442, 577, 933) and id>=$start AND id<=$end;

我的 sql_info

SELECT id, concat(ifnull(title, ""), ifnull(tags, "")) FROM items WHERE group_id in (262, 147, 165, 190, 256, 272, 442, 577, 933) and id=$id;

但是,当我尝试使用查询索引表时,索引失败。 1)我在上述查询中遗漏了什么。 2)如何通过给出条件来索引查询?

1 个答案:

答案 0 :(得分:0)

我的猜测是你应该为复合文本语句添加别名,sphinx可能会在尝试创建名为concat(ifnull(title, ""), ifnull(tags, ""))字段时窒息。

SELECT id, group_id, concat(ifnull(title, ""), ifnull(tags, "")) AS text \