0
我們在iPhone應用程序上使用sqlite。在一個搜索框,我們要查詢的數據庫,並返回與用戶正在打字相關的任何值。目前,我們正在尋找在幾個不同的列像使用多列LIKE「%%」提高搜索性能
Gene
Disease
Medicine
Keywords
我們開始用蠻力調用此方法(有一些僞代碼),當搜索文本改變的方法:
// Basically we do this for our 4 columns we are searching on
NSString *query2 = [NSString stringWithFormat:@"select * from MedicineList where MedicineList.Keywords like \"%%%@%%\"",searchtext];
FMResultSet * rs2 = [ _patientAnnotatedDatabase executeQuery:query2];
while ([rs2 next])
{
// if you find anything, put it in a dictionary
}
[rs2 close];
這是搜索的列,並返回結果的字典一種大方法。它適用於我們的數據集很小的情況。當然,我們的數據集比較大,並不是那麼高效。除了在我們正在搜索的列上創建索引之外,我們還可以做其他性能方面的事情嗎?提前致謝。