У меня есть простой запрос, который выполняется довольно быстро (1-2 секунды) и возвращает 20 строк:
select * from table where field1 = 'ABC'
Однако, если я добавлю еще один фильтр в другое поле, например:
select * from table where field1 = 'ABC' and field2 = 'XYZ'
время ожидания запроса истекло (ограничение составляет 30 секунд). Если это имеет значение, ожидается, что в нашем случае запрос вернет те же 20 строк.
Оба поля не являются частью ключа сортировки, и таблица содержит около 250 миллионов строк с примерно 20 столбцами.
Вопрос: это ожидаемое поведение? Я ожидаю, что время выполнения запросов должно быть более или менее равным. Если ожидается, есть ли руководство, какие запросы следует избегать, или есть инструмент, позволяющий выяснить, является ли это «плохим» запросом.
Заранее спасибо!