0
我對獅身人面像很新穎,所以我對它有個疑問。SPHINX(搜索):僞造查詢中的sql
比方說,我有一個名爲tv_releases
我的sphinx.conf包含(小部分)表:
source tv_releases
{
type = mysql
sql_host = localhost
sql_user = ---------
sql_pass = ---------
sql_db = --------
sql_port = 3306
sql_query_pre = SET NAMES utf8
#ingore for example (delta updates).
sql_query_pre = REPLACE INTO title_counter SELECT 3, MAX(id) FROM tv_releases
sql_query = SELECT id,rel ,tv_id,total_subs FROM tv_releases\
#ignore for example (delta updates).
WHERE id<=(SELECT max_doc_id FROM title_counter WHERE counter_id=3)
sql_attr_uint = total_subs
sql_attr_uint = tv_id
}
索引被罰款,也查詢。
現在sphinxapi(PHP)(部分):
$sp = new SphinxClient();
---...
$sp->SetMatchMode(SPH_MATCH_ALL);
$sp->SetArrayResult(true);
$sp->SetLimits (0, 100);
$sp->SetSortMode (SPH_SORT_EXTENDED, "@relevance DESC, ....more options");
$results = $sp->Query('SEARCHTERM', 'tv_releases');
現在我的問題:
比方說,我有以下的版本(稱爲相對錶)。
rel 1 : Name s01e02 Format-extradata
rel 2 : Name s01e03 Format-extradata
rel 3 : Name s02e05 Format-extradata
rel 4 : Name s02e06 Format-extradata
rel 5 : Name s03e06 Format-extradata
當我SEARCHTERM是 「名稱S01」
我想要匹配的版本(相對)(按相關性排序)
將包含名稱s01e的所有版本開始* *
問題是,它不會這樣做。 一個簡單的像'名稱s01%'在SQL中會做到這一點,但獅身人面像的整點是速度。
有人有解決方案如何完成在獅身人面像所需(搜索)結果?
乾杯
非常感謝!我會看看,希望它能解決一些查詢問題。 –