tôi tạo ra một bảng sử dụng sơ đồ như vậy:Làm thế nào để cải thiện hiệu suất sqlite như tuyên bố
CREATE TABLE wordIndex(id integer primary key, word varchar(128), offset integer, length integer);
CREATE INDEX word_idx on wordIndex(word);
Bây giờ bàn có khoảng 450.000 hàng records.When tôi sử dụng Giống như tuyên bố Dưới đây trên ipod4, hiệu suất là không tốt: chọn * từ wordIndex nơi từ như 'test acces%'; Sử dụng kết quả giải nghĩa:
explain select * from wordIndex where word like 'test acces%';
0|Trace|0|0|0||00|
1|Goto|0|16|0||00|
2|OpenRead|0|2|0|4|00|
3|Rewind|0|14|0||00|
4|String8|0|2|0|test acces%|00|
5|Column|0|1|3||00|
6|Function|1|2|1|like(2)|02|
7|IfNot|1|13|1||00|
8|Rowid|0|4|0||00|
9|Column|0|1|5||00|
10|Column|0|2|6||00|
11|Column|0|3|7||00|
12|ResultRow|4|4|0||00|
13|Next|0|4|0||01|
14|Close|0|0|0||00|
15|Halt|0|0|0||00|
16|Transaction|0|0|0||00|
17|VerifyCookie|0|2|0||00|
18|TableLock|0|2|0|wordIndex|00|
19|Goto|0|2|0||00|
Tôi có thể cần tạo thêm chỉ mục đảo ngược để cải thiện hiệu suất hoặc ...? Cảm ơn bạn trước!
Bạn đang sử dụng chỉ có mô hình này cho NHƯ (ví dụ: bắt đầu với)? –
Có, chỉ cần "aaa%" mô hình – ericfang