Всем привет! Есть проблема у меня: В базе живет две таблицы: client ( ntel int4, ...) billing ( ntel int4, ...) По полям ntel созданы индексы CREATE INDEX client_ntel ON client ( ntel ); CREATE INDEX billing_ntel ON billing ( ntel ); В таблице клиентов 14000 записей. В биллинге - 1100000 записей. Запрос для таблицы клиентов отрабатывает мгновенно SELECT * FROM client WHERE ntel=549821; test=# EXPLAIN SELECT * FROM client WHERE ntel=549821; NOTICE: QUERY PLAN: Index Scan using ntel on client (cost=0.00..6.86 rows=1 width=91) Т.е. индекс используется - все путем. Для таблицы биллинга подобный запрос приводит к полному сканированию: test=# EXPLAIN SELECT ntel FROM billing WHERE ntel=532452; NOTICE: QUERY PLAN: Seq Scan on billing (cost=0.00..28597.41 rows=370 width=8) Запрос, соответственно, выполняется 50-100 сек. VACUUM ANALYZE billing результата не дает. Ткните носом - где копать? Николай.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Настройка секционирования в postgresql (2016)
- Форум Создать индекс для рекурсивного запроса (2021)
- Форум Ускорить простой запрос с CTE (2023)
- Форум проблема с новым сервером postgres (2020)
- Форум Проблема с PostgreSQL. При использовании LIMIT не используется индекс. (2017)
- Форум быстрый Nested Loop и медленный Merge join (2021)
- Форум Индекс для сортировки (2020)
- Форум Помогите настроить full text search в Postgresql 9.3 с индексом. (2015)
- Форум Оптимизировать запрос, доработать индекс (2022)
- Форум Индекс и сортировка по двум полям (2019)