Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.10.06;
Скачать: [xml.tar.bz2];

Вниз

Про Plan   Найти похожие ветки 

 
rava   (2003-09-16 08:49) [0]

Имеется таблица Saldo. По полю KOD создан индекс.
Как составить PLAN чтобы SELECT использовал индекс ?
Select * From Saldo Where kod=100 Plan ???????


 
Alexandr   (2003-09-16 08:57) [1]

он и должен использовать индекс и без твоего плана.


 
rava   (2003-09-16 09:14) [2]

> Alexandr

Select KOD From Saldo
Where saldo.NCH = "20202810001938000751" And saldo.DPLT <= "09/11/2003"

Saldo имеет 220000 записей.
Индекс активна.
Но запрос по моему не использует индекс. Что нужно для того чтобы запрос выполнялься быстрее.

Анализ производительности запроса IBManager:
Query Time
------------------------------------------------
Prepare : 47
Execute : 4 390
Avg fetch time: 292,67 ms

Memory
------------------------------------------------
Current: 3 028 937
Max : 3 419 257
Buffers: 2 048

Operations
------------------------------------------------
Read : 16 899
Writes : 4
Fetches: 471 089

Plan:
------------------------------------------------
PLAN (SALDO NATURAL)

Enchanced Info:
+--------------------------+-------+-----------+---------+---------+----------+
| Table Name | Index | Non-Index | Updated | Deleted | Inserted |
| | reads | reads | | | |
+--------------------------+-------+-----------+---------+---------+----------+
| RDB$FIELDS| 4 | 0 | 0 | 0 | 0 |
| RDB$RELATION_FIELDS| 4 | 0 | 0 | 0 | 0 |
| RDB$RELATIONS| 2 | 0 | 0 | 0 | 0 |
| SALDO| 0 | 218 642 | 0 | 0 | 0 |
| RDB$RELATION_CONSTRAINTS| 0 | 20 | 0 | 0 | 0 |
+--------------------------+-------+-----------+---------+---------+----------+


 
Alexandr   (2003-09-16 09:20) [3]

индексы покажи.


 
Johnmen   (2003-09-16 09:24) [4]

>Что нужно для того чтобы запрос выполнялься быстрее.

Например, иметь индексы по тем полям, которые в WHERE...


 
rava   (2003-09-16 09:27) [5]

> Alexandr

CREATE TABLE SALDO (
DPLT DATE,
KOD INTEGER,
NCH CHAR (20) CHARACTER SET WIN1251 COLLATE WIN1251,
SALDO DOUBLE PRECISION);

/* Indices definition */

CREATE DESCENDING INDEX IDX_SALDO ON SALDO (KOD);


 
Alexandr   (2003-09-16 09:35) [6]

а по DPLT?


 
Danilka   (2003-09-16 09:37) [7]

rava © (16.09.03 09:27)
ему нужны индексы по полям участвующим в секции where, в твоем случае это:
NCH и DPLT


 
rava   (2003-09-16 09:56) [8]

Всем спасибо !
Созданием двух индексов по полям NCH и DPLT запрос выполняется 90 раз быстрее.


 
Johnmen   (2003-09-16 10:03) [9]

Расплатой за это будет в несколько раз замедленный ввод/удаление данных в таблицу...:)))
Хотя, как правило, это несущественно...



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.10.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
3-18263
KIR
2003-09-15 17:06
2003.10.06
Строка соединения с IB


14-18617
Layner
2003-09-17 13:55
2003.10.06
Вебкамера = видеонаблюдение


1-18405
NickBat
2003-09-25 15:25
2003.10.06
TRichEdit


1-18305
dima_shapkin
2003-09-23 11:19
2003.10.06
Такой хитрый грид


9-18208
scout
2003-03-30 18:26
2003.10.06
Таймер в GLScene





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский