有人可以帮我理解创建MVA的预期数据格式(多值) Sphinx中的属性?
我有一个MySQL函数,它返回一行以逗号分隔的整数,整理了
GROUP_CONCAT
,作为一个blob。我有另外两个MVA属性来整理a的结果
JOIN语句,GROUP_CONCAT
,作为blob(由ThinkingSphinx生成)。这些都包含在我的sphinx.conf中的sql_query
中。
我尝试在控制台中的一个小结果集上运行SQL,它可以工作:对于所有 在MVA列中,结果是包含以下数据的blob:
2432,35345,342347,8975,453645
等等。正确生成JOIN
/ GROUP_CONCAT
组合索引的两个MVA属性。但是,使用MySQL函数生成的MVA属性会导致
索引以静默方式失败(看似很少或没有数据被索引)。尽管查询在控制台中运行得非常好,但这仍然存在。
因此数据格式似乎相同,但Sphinx拒绝其中一个列。有没有人知道定义MVA属性的任何问题可能有助于我调试 此?
答案 0 :(得分:1)
我从未使用过思考 - 狮身人面像(在这里是一家PHP商店),但我认为你不应该对你的结果进行group_concat。从我的一个sphinx.conf文件中的工作示例:
sql_attr_multi = uint categories from query; SELECT entry_id, cat_id FROM exp_category_posts
答案 1 :(得分:0)
我最终解决了这个问题。这是因为某事而发生的 这似乎是无关的:'sql_attr_str2ordinal'属性似乎受到了影响 (或影响)SQL查询/索引以我不完全理解的方式。
请参阅:http://www.sphx.org/forum/view.html?id=2867
幸运的是,在我的情况下,我能够完全删除它,现在索引似乎有效。