2013-08-24 55 views
-1

我已經瀏覽了網上可用的文獻,以瞭解互聯網上可用的SQLite的各種JOIN。但無法找出符合我要求的。SQLite 3,FTS3 - 加入查詢

我需要執行基於各種類別的過濾操作,最重要的是我需要從過濾的內容中執行SEARCH操作。

"TABLE 1: FOOTWARE_MASTER (SQLite TABLE) 

Id = Numeric Primary Key 
Item_Type = One of the following (Shoe, sandals, floaters) 
Brand = Nike, Puma, Reebok 
Description = .. .. .. . .. .. (1000 words)" 

TABLE 2: FOOTWARE_DESCRIPTION (SQLite Virtual Table powered by FTS) 

Id = Numeric Primary Key 
IdReferenced = Foreign key (FOOTWARE_MASTER Primary key) 
Description 

用戶選擇品牌耐克和ITEM_TYPE = SportShoes 用戶得到結果集的1000個項目。現在他想通過描述中的「搜索」具體細節進一步減少它們。

即我需要構造查詢,首先篩選出數據集並搜索特定的文本與該數據集(一個替代方案,我可以寫簡單的JOIN查詢,可以給我適當的結果,但我的郵件關注是性能)。請建議特定類型的JOIN查詢,這可能會導致良好的性能。

回答

0
SELECT * 
FROM Footware_Master 
WHERE Brand = 'Nike' 
    AND Item_Type = 'SportShoes' 
    AND Id IN (SELECT IdReferenced 
      FROM Footware_Description 
      WHERE Description MATCH 'details')