powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / оптимизация запроса
3 сообщений из 28, страница 2 из 2
оптимизация запроса
    #38643269
usver_dc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ivan DurakПроблема в том что 31 тысяча индекс сиков по таблице с 9 тысячами записей - это ПЛОХО!
-------------------------------------------
1. Попробуй "turpoisk"."vw_tp_published_hotline" AS "self" заменить на
ti_operator_hotline если логика это позволяет!!!
2. Также независимо от #1 надо на ti_operator_hotline него индекс по полю operator.
И ждем MERGE JOIN.

Типа:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT
	"op_class"."id",
	"op_class"."name"
FROM
	"dict"."dict_operator_class" AS "op_class"
WHERE
	(EXISTS(SELECT
	"self"."id"
FROM
	ti_operator_hotline  AS "self"
	INNER JOIN "dict"."vw_dict_operator_class_rel" AS "op_class_rel" ON self.operator = op_class_rel.operator
WHERE
	(op_class_rel.class = op_class.id)))
ORDER BY
	"op_class"."id" ASC



1. Логика не позволяет
2. Индекс есть
3. Запрос выполнился за 35 мс, но а толку-то...
...
Рейтинг: 0 / 0
оптимизация запроса
    #38643329
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
usver_dcIvan DurakПроблема в том что 31 тысяча индекс сиков по таблице с 9 тысячами записей - это ПЛОХО!
-------------------------------------------
1. Попробуй "turpoisk"."vw_tp_published_hotline" AS "self" заменить на
ti_operator_hotline если логика это позволяет!!!
2. Также независимо от #1 надо на ti_operator_hotline него индекс по полю operator.
И ждем MERGE JOIN.

Типа:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT
	"op_class"."id",
	"op_class"."name"
FROM
	"dict"."dict_operator_class" AS "op_class"
WHERE
	(EXISTS(SELECT
	"self"."id"
FROM
	ti_operator_hotline  AS "self"
	INNER JOIN "dict"."vw_dict_operator_class_rel" AS "op_class_rel" ON self.operator = op_class_rel.operator
WHERE
	(op_class_rel.class = op_class.id)))
ORDER BY
	"op_class"."id" ASC



1. Логика не позволяет
2. Индекс есть
3. Запрос выполнился за 35 мс, но а толку-то...
Если это критичный запрос то
сделай из вьюхи "turpoisk"."vw_tp_published_hotline" таблицу!
Если она будет обновлятся гораздо реже чем выполняется данный запрос - получишь большой профит
...
Рейтинг: 0 / 0
оптимизация запроса
    #38645558
usver_dc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ivan Durak, спс, это есть в планах, пока кеширую зазпрос на определенных данных и в общем результат устраивает. Всем спасибо за помощь!
...
Рейтинг: 0 / 0
3 сообщений из 28, страница 2 из 2
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / оптимизация запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]