天天看點

SphinxSE 一些SQL查詢語句

1、查詢STRUCTURE_ID=106562并且COL1=2 或者 COL1=0 或者 COL2=2,對TS進行排序,從第10條開始取1000條。

SELECT ID FROM T_RESOURCE_BASE_SphinxSE WHERE query='select=IF(STRUCTURE_ID=106562,1,0) AND (IF(COL1=2,1,0) OR IF(COL1=0,1,0) OR IF(COL2=2,1,0)) as match_qq;filter= match_qq, 1;sort=attr_desc:TS;offset=10;limit=1000'

2、若AUTHOR,RESOURCE_TITLE,RESOURCE_CONTENTS三個字段都全文索引了,但隻想搜RESOURCE_TITLE,或RESOURCE_CONTENTS中含有“交響曲”關鍵字的文章

說明:要指定某個字段進行搜尋,要用@字段名+空格+關鍵字+分号+mode=extended 如果不指定字段,則系統會對TITLE,CONTENTS進行搜尋 ,對什麼字段進行全文檢索取決于在sphinx.conf中sql_query定義的select 中的字段(文本類型)

3、查詢全部索引中含有交響曲或地球的資料,或者隻查詢RESOURCE_TITLE字段含有交響曲或地球的資料

SELECT t.id,t.resource_title FROM T_RESOURCE_BASE_SphinxSE as c ,t_resource_base t where c.id=t.id  and query='交響曲 | 地球;mode=extended;limit=1000'