Зачем нужен Index Skip Scan? Продолжение Друзья, всем привет! 👋 С вами Костя Андронов 🙂 В понедельник мы опубликовали вопрос про Index Skip Scan от одного из наших студентов с 6 потока по оптимизации Что такое Index Skip Scan?🤔 Это один из методов доступа к данным через индекс. Обычно он используется, когда в таблице есть составной индекс, но в предикатах запроса отсутствуют лидирующие колонки. Рассмотрим на примере. Пусть у нас есть таблица employees и индекс: create index emp_name_ix on employees(last_name, first_name) Как выглядят листовые блоки этого индекса? В них хранятся все пары last_name, first_name в отсортированном виде, и для каждой — rowid строки. Пример: ... 'Ivanov', 'Alexander' - 'AAAR2TAAUAAAADtAAD' 'Ivanov', 'Michail' - 'AAAR2TAAUAAAADtAAz' ... 'Petrov', 'Alexander' - 'AAAR2TAAUAAAADtAAF' 'Petrov', 'Petr' - 'AAAR2TAAUAAAADtABB' ... А теперь вопрос: как получить только те строки, где first_name = 'Alexander'? Есть два пути: 🔹 Прочитать весь индекс и отобра