URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 7759
[ Назад ]

Исходное сообщение
"Скорость выполнения запросов"

Отправлено Вася , 16-Авг-13 23:26 
Как узнать, нормальное ли время выполнения запроса:

к примеру такого
SELECT COUNT(*) FROM table;

Строк в таблице: 796174
Время: 112,958 мс

122 мс - это много или мало ?
Как уменьшить это время ?

Спасибо.


Содержание

Сообщения в этом обсуждении
"Скорость выполнения запросов"
Отправлено PavelR , 17-Авг-13 12:00 

> Как уменьшить это время ?

Написать триггер и хранить значение в отдельной таблице.


"Скорость выполнения запросов"
Отправлено Andrey Mitrofanov , 17-Авг-13 14:41 
> SELECT COUNT(*) FROM table;
> Как уменьшить это время ?

Считать строки можно....


1/ count()-ом, и даже пытаться повернуть мозг в сторону

google://pgsql SELECT COUNT speed

разницы между count(*), count(1), count(ALL), count(PrimaryKey), ...

2/ _приблизительно_ по таблицам статистики ANALYZe-а (в постгресе)

google://pgsql record number approximate

http://stackoverflow.com/questions/2596670/how-do-you-find-t...

(Мне, например, на 100,000,000+ записях в Zabbix-е дальше 4-го значащего не сильно интересно, "точное" значение.)

3/ может, ещё как (триггеры на insert/delete + хранимый счётчик уже предложили)