2
正如我看到LIKE運算符可以優化查詢,如果我切換PRAGMA case_sensitive_like = ON。我衡量,它確實有效,查詢「LIKE someth%」在分區大的二進制索引表上變得快十倍。 但問題是我的庫作爲我的應用程序的附加組件實現,它使用它連接的任何數據庫維護其自己的表。所以,問題是在sqlite中使用LIKE case sensivity的便捷方式
- 我不能讀 case_sensitive_like,因爲它僅支持到設置,不讀。所以我不能暫時讀取狀態並在查詢後返回它,作爲一個應該服從db的主要功能的插件,我不應該將該設置更改爲我的需要,因爲它會影響其他例程。
- 正如我所看到的那樣,我沒有Like(區分大小寫)的內部等價物來直接調用optimizid查詢。例如使用LIKECASESENSITIVE而不是LIKE
- 我可以調用sqlite3_create_function,但我不知道我是否可以在內部調用LIKE(CASE SENSITIVE)。