Форум: "Базы";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];
ВнизКак ускорить запросы SQL проводимые над Paradox базой? Найти похожие ветки
← →
firedemon (2002-09-10 13:35) [0]Делаю запросы к таблице такого типа:
SELECT DISTINCT S.FIO
FROM STUDENT.DB S
WHERE S.BIRTHDAY BETWEEN "10.9.1932" and "10.9.1984" and S.SEX=TRUE
В таблице всего 50 записей. Этот запрос выполняется 1 или 2 минуты! И это на 4-ом пне!
Влияют ли вторичные индексы на скорость обработки данных?
Что мне делать посоветуйте.
← →
Shaman_Naydak (2002-09-10 15:10) [1]50 записей - 2 минуты, любопытно, однако!
Влияют-влияют
← →
Johnmen (2002-09-10 15:25) [2]Как, откуда, какими средствами делается запрос ?
1-2 мин. для 50 записей, даже в отсутствии индексов, - НОНСЕНС !!!
← →
MsGuns (2002-09-10 17:55) [3]>WHERE S.BIRTHDAY BETWEEN "10.9.1932" and "10.9.1984" and
> S.SEX=TRUE
Возьми условия в скобки (у меня тоже такое было):
WHERE (S.BIRTHDAY BETWEEN "10.9.1932" and "10.9.1984") and
(S.SEX=TRUE)
← →
firedemon (2002-09-11 11:06) [4]ВСЁ! Разобрался. Спасибо Вам за Ваши мысли.
Оказывается дело было в том что динамически формируемый запрос формировался примерно вот так :
SELECT DISTINCT S.FIO
FROM STUDENT.DB S,SPECIALITY.DB P,LEVELSVK.DB K,LANGUAGE.DB L
WHERE S.BIRTHDAY BETWEEN "11.9.1932" and "11.9.1984" and S.SEX=TRUE
Хотя таблицы SPECIALITY.DB P,LEVELSVK.DB K,LANGUAGE.DB L не учавствуют в запросе! НО с другой стороны, а когда их нужно включать в запрос - время выборки будет вообще до 5 минут доходить. Попробую сделать вторичные индексы по всем полям учавствующим в запросе.
← →
ЮЮ (2002-09-12 04:15) [5]когда нужно делать выборки из нескольких таблиц, надо указывать связи между таблицами, иначе получаешь произведение таблиц, отсюда и время
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c