问题描述
source tasks : common
{
sql_query = \
SELECT \
t.tasks_id,\
t.tasks_id AS task_id,\
t.message AS message \
FROM \
tasks AS t \
sql_field_string = task_id
sql_field_string = message
}
$sphinx->Query('добро','message');
据我所知,sql_field_ * 创建了一个索引和一个字段。那么为什么查询时会报错呢?
但是如果我使用 '*' 一切正常,但我想要,当在消息字段中搜索时
解决方法
据我所知,sql_field_ * 创建了一个索引和一个字段。那么为什么查询时会报错呢?
没有。 sql_field_ 在现有索引中创建一个字段。不是一个全新的索引。
因此基于此源的索引将具有消息字段。想必你有 类似的东西
index tasks {
source = tasks
...
}
在这种情况下可以使用字段语法来搜索特定字段
$sphinx->Query('@message добро','tasks');
(最好搜索特定 tasks
索引,而不是所有索引(使用 *
),因为查询仅适用于具有 {{ 1}} 字段)