2012-04-19 73 views
0

我有mysql数据库与应用程序表。每个应用程序都可以有一个或多个开发人员,因此在Sphinx中,我想创建多值属性来通过开发人员id搜索应用程序,我尝试以这种方式创建属性:狮身人面像MVA中的错误查询

sql_attr_multi = uint开发人员查询; \选择ID,名字从apps_developers WHERE APP_ID = $ ID

,但是当我尝试建立索引的狮身人面像服务器告诉我的错误:

错误:指数“应用”:多值ATTR“开发商”查询失败:'where子句'中的未知列'$ id'。

在我看来,$ id必须包含源查询中每个应用程序的id值?我是对的?为什么这个错误是发生的?

回答

2

的MVA查询应返回所有的应用程序的结果(即在结果第一列中,DOCUMENT_ID匹配)

sql_attr_multi = uint developers from query; \ 
    SELECT app_id, id FROM apps_developers ORDER BY app_id