Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Долгие запросы к таблице
|
|||
|---|---|---|---|
|
#18+
Прошу прощения за, возможно, глупый вопрос, но всё же.. Посылаю запрос Код: plaintext Запрос Код: plaintext Пробовал сделать Код: plaintext Код: plaintext Похоже, что помогло, но очень незначительно. Подскажите в чём дело. Заранее благодарю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2004, 16:55 |
|
||
|
Долгие запросы к таблице
|
|||
|---|---|---|---|
|
#18+
Во-первых, сделай VACUUM FULL, во-вторых, если результат запроса не сильно критичен - попробуй к примеру SELECT count(*) FROM users WHERE id>0, где id - pimary key. Суть та же, но это позволяет использовать индекс, и в некоторых запущенных случаях позволяет повысить производительность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2004, 16:58 |
|
||
|
Долгие запросы к таблице
|
|||
|---|---|---|---|
|
#18+
Спасибо, помогло. Всё отлично работает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2004, 18:09 |
|
||
|
Долгие запросы к таблице
|
|||
|---|---|---|---|
|
#18+
select count(<primary_key>) from <table> тоже покатит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2004, 19:17 |
|
||
|
Долгие запросы к таблице
|
|||
|---|---|---|---|
|
#18+
visselect count(<primary_key>) from <table> тоже покатит Мне кажется, нет, поскольку при вычислении агрегатных функций индексы не используются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2004, 03:31 |
|
||
|
Долгие запросы к таблице
|
|||
|---|---|---|---|
|
#18+
Эридан visselect count(<primary_key>) from <table> тоже покатит Мне кажется, нет, поскольку при вычислении агрегатных функций индексы не используются. проверил... был неправ :) таки не работает индекс для count() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2004, 09:42 |
|
||
|
Долгие запросы к таблице
|
|||
|---|---|---|---|
|
#18+
Самое смешное, что предложенный мной способ (WHERE id>0) тоже не всегда цепляет индексы. Зависит от того, как лягут звезды для оптимизатора. Да и вообще не дело это. Надо безо всяких условий писать :) В свое время я связывался с одним из разработчиков Postgres, вот цитата из письма: Мой вопрос: > Добрый день, Теодор. > > Скажи пожалуйста, как рекомендуется вычислять точное количество > записей в таблице? > > Согласно документу > http://www.postgresql.org/docs/7.4/interactive/functions-aggregate.html > насколько я понял, есть определенные проблемы с вычислением > > select count(*) > from some_table Ответ Теодора Сигаева: > Так и рекомендуется. Проблемы есть только в быстродействии. Но для > быстродействия стоит написать триггера на insert & delete, которые щелкают > счетчик в отдельной таблице). > Проблемы с быстродействием заключаются в MVCC (multi version concurrence > control) - в зависимости от настроек transaction isolation level и текущих > транзакций рез-тат может быть разный. Поэтому только sequence scan гарантирует > целостность count(*). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2004, 12:06 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=32613242&tid=2007760]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 386ms |

| 0 / 0 |
