Двадцать пять заповедей SQL - Указывайте в разделе WHERE начальные столбцы ключа индекса
ОГЛАВЛЕНИЕ
Страница 12 из 26
11. Указывайте в разделе WHERE начальные столбцы ключа индекса.
При наличии индекса с составным ключом этот индекс может быть использован, если в разделе WHERE фигурируют условия на начальные столбцы его ключа. Для следующего запроса может быть применен составной индекс на столбцах PART_NUM и PRODUCT_ID, образованный в связи с ограничением первичного ключа:
SELECT *
FROM PARTS
WHERE PART_NUM = 100;
в то время как в приводимом ниже запросе составной индекс использоваться не может:
SELECT *
FROM PARTS
WHERE PRODUCT_ID = 5555;
Последний запрос можно переписать так, чтобы индекс можно было применить. В этом запросе предполагается, что столбец PART_NUM будет всегда содержать положительные значения:
SELECT *
FROM PARTS
WHERE PART_NUM > 0
AND PRODUCT_ID = 5555;