powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
6 сообщений из 6, страница 1 из 1
SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
    #36066747
wildew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
приветствую.
может, кому-то вопрос покажется идиотским, но всё же...

есть таблица:

Код: plaintext
1.
2.
CREATE TABLE wd (ID INTEGER PRIMARY KEY,
word VARCHAR[ 40 ], 
description TEXT);


есть индекс:

Код: plaintext
CREATE INDEX Word_index ON wd (word);


так вот, как указать интерпретатору mySQL, что значения поля word уже отсортированы по алфавиту?
возможно ли это?
и даст ли это выигрыш в скорости SELECT по word?
если нет, то как еще можно ускорить выборку?
...
Рейтинг: 0 / 0
SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
    #36066959
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Код: plaintext
CREATE INDEX Word_index ON wd (word asc);

Версию формата файла БД нужно указать с поддержкой asc и desc индексов. Порядок записей в самой таблице для индекса роли не играет.

Кластеризация исходных данных (у вас - в виде алфавитной сортировки) выигрыш дает при больших объемах данных и определенных видах запросов, если у вас база маленькая (меньше 100 МБ), то вряд ли что-то заметите.

Ускорить можно, перестав искать и сортировать по текстовому полю - SQLite не сжимает индексы, так что значение текстового поля копируется в индекс целиком. Используйте хэш, или нормализуйте БД или придумайте другой способ выборки.
...
Рейтинг: 0 / 0
SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
    #36066973
wildew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MBG,
авторВерсию формата файла БД нужно указать с поддержкой asc и desc индексов. Порядок записей в самой таблице для индекса роли не играет.
-- каким образом это сделать?

авторесли у вас база маленькая (меньше 100 МБ), то вряд ли что-то заметите.
-- больше 100 МБ :)
...
Рейтинг: 0 / 0
SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
    #36073424
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Код: plaintext
PRAGMA legacy_file_format= 0 ; 

Или при компиляции -DSQLITE_DEFAULT_FILE_FORMAT=4
Или из моего репозитория взять сборку: http://mobigroup.ru/page/debian
...
Рейтинг: 0 / 0
SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
    #36079716
quazare
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
версия sqlite какая?
...
Рейтинг: 0 / 0
SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
    #36080115
wildew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
версия sqlite последняя
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / SQLite: поиск по таблице с отсортированными значениями, как ускорить SELECT?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]