данных заставляет для запросов по индексам делать подзапросы в себя же для того, чтобы срабатывали все индексы
Насколько «костыльным» выглядит решение сделать мат вьюху, где будут индексы и запрашивать оттуда?
Пример запроса
select * from table
where index1 in (select index where expr)
and index2 in (select index where expr)
and column in (list of values)
ничего не понятно, каким образом помогает запрос в самого себя?
Нет возможности до запроса получить индексы
ничертанепонять из вашего объяснения
Существует таблица article_positions date date article int32 query string position int32 brandId int32 Нужно получить все артикулы и их позиции по списку ключевых запросов Индекс по brandId, article, query, date Если знать brandId, то запрос отрабатывает очень быстро без него перебирается очень много байт данных Невозможно точно гарантировать сторонними способами что множество brandId включает в себя множество артикулов, которые нас интересуют Только если сделать селект brandId из article_positions where article in … Можно доп запросом узнать, можно подзапросом
Обсуждают сегодня