我正在处理增量更新脚本,并且每次尝试使用此命令时都会:
SELECT id, title, search
FROM related
WHERE id >
(
SELECT max_doc_id
FROM sphinx_delta
WHERE counter_id = 2
)
在phpMyAdmin中运行它将返回10个结果。
SELECT id, title, search
FROM related
WHERE id > 1010
在phpMyAdmin中运行它将返回SAME 10结果。当然,从子选择返回的值是1010.
唯一的问题是,当我在Sphinx搜索中使用第一个查询时,它返回0结果,而第二个返回10个结果。我不知道什么是错的,两个查询在MySQL中完美运行,我使用Sphinxs网站上的教程来制作配置文件。
这是我的配置文件中的部分:
source delta2 : related
{
type = mysql
sql_host = localhost
sql_user = *
sql_pass = *
sql_db = base
sql_port = 3306
sql_query = SELECT id, title, search FROM related WHERE id > (SELECT max_doc_id FROM sphinx_delta WHERE counter_id = 2)
}
我试过在Sphinx的论坛上发帖,但得到了0回复。任何建议,我从0.9.9迁移到最新版本希望它能解决它,它无法修复它。
答案 0 :(得分:0)
您正在尝试从... delta读取时更新delta? sphinx不会更新索引,它会重新创建它们,没有什么可读的。