我是mysql,php和sphinx的新手。
如果给定query text
,我想返回表的名称。
我query text
可以属于州或县的任何类别。我通过query text
向POSTMAN
发送API
并尝试打印回复结果
但它返回0匹配
这是狼人。因为查询文本存在于我正在传递的一个表中。例如。查询文本是Alabama,存在于状态表中,但仍然说没有找到结果。
php code
$cl = new SphinxClient();
$cl->SetServer('127.0.0.1', 9312);
$cl->SetMatchMode(SPH_MATCH_EXTENDED);
$result = $cl->Query($query, 'detectkeyword');
print_r($result);
Sphinx.conf代码
sql_query = \
Select UUID_SHORT() AS sphinxid, 'state' as keyword from region \
UNION ALL \
Select UUID_SHORT() AS sphinxid, 'county' as keyword from county;
sql_attr_uint = sphinxid
sql_field_string = keyword
答案 0 :(得分:0)
你似乎没有一个单独的字段来实际“匹配”,
需要类似......
Select UUID_SHORT() AS sphinxid, region_name as text, 'state' as keyword from region \
否则您的查询仅与'state'关键字本身匹配。