Все, что вам нужно знать об этом
Индексы — это специальные таблицы поиска, которые должны использоваться поисковой системой базы данных для ускорения поиска данных. Индекс — это просто ссылка на данные в таблице. Индекс базы данных похож на индекс в конце журнала. Пользователи не могут просматривать его и используют только для ускорения доступа к базе данных.
Например, чтобы сослаться на все страницы книги, посвященные определенной теме, вы сначала переходите к указателю, в котором все темы перечислены в алфавитном порядке, а затем переходите к одному или нескольким конкретным номерам страниц.
Индексы предотвращают дублирование записей в столбце или комбинации столбцов, в которых он создан. Поскольку индексы SQL — это прежде всего инструмент повышения производительности, они наиболее полезны, когда размер базы данных увеличивается. Кластеризованный индекс — один из самых популярных типов индексов, поддерживаемых SQL-сервером. Этот тип индекса создается автоматически с использованием первичного ключа.
Два основных метода использования индекса в SQL:
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
- Команда СОЗДАТЬ ИНДЕКС
- Команда ПЕРЕДАЧА ИНДЕКСА
Команда СОЗДАТЬ ИНДЕКС
Эта команда используется для создания индекса таблицы в SQL с использованием выражения индекса сборки. Во время создания таблицы это позволит вам перенести в нее дублированные данные. Индексирование ускоряет запрос столбцов за счет создания указателей на то, где данные хранятся в базе данных.
Предположим, вам нужно найти определенный фрагмент данных в огромной базе данных. Чтобы получить эти данные из базы данных, машина будет искать каждую строку, пока не найдет ее. Выполнение этого запроса займет много времени, если данные, которые вы ищете, приближаются к концу.
Синтаксис:
CREATE INDEX name_of_Index ON name_Of_Table(Attribute1, Attribute2,…);
Код:
создать INDEX ind_1 в Studentdet(regno,dept);
Объяснение:
Мы можем генерировать отсортированные списки, используя индексы SQL, вместо того, чтобы создавать новые отсортированные таблицы, которые заняли бы много места для хранения.
ИНДЕКС — ключевое слово, указывающее создание индекса.
Ind_1 — имя индекса.
Studentdet — это имя таблицы.
В приведенном выше примере ind_1 был создан с полями regno и dept из таблицы Studentdet.
Выход:
Станьте бизнес-аналитиком, использующим искусственный интеллект, с помощью программы бизнес-анализа Университета ПердьюИзучите сейчас
Одностолбцовые индексы
Для создания индекса одностороннего столбца используется только один столбец таблицы. Чтобы создать индекс для одностороннего столбца из таблицы, используйте приведенный ниже синтаксис.
Синтаксис:
СОЗДАТЬ ИНДЕКС name_of_Index ON name_Of_Table(Attribute1);
Код:
создать INDEX ind_reg на Studentdet(regno);
Здесь ind_reg — индекс, созданный с атрибутом regno.
Выход:
Уникальные индексы
Согласно индексу в SQL, уникальные индексы используются для обеспечения целостности и точности данных. Уникальный индекс предотвращает ввод повторяющихся значений в таблицу.
Синтаксис:
СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС name_index для table_na (Attribute_name);
Код:
СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС sidindex в Student_DB (L_Name);
Имя таблицы — Student_DB с полем L_Name. Сидиндекс — это уникальный индекс, созданный для таблицы Student_DB.
Выход:
Композитный индекс
Согласно индексу в SQL, индекс по двум или более столбцам таблицы называется составным индексом. Он может создать один и тот же индекс с разным количеством столбцов.
Синтаксис:
СОЗДАТЬ ИНДЕКС Name_index ON db_table(column1,Column2…….);
Код:
СОЗДАТЬ ИНДЕКС stu_index ON Student_DB(S_ID,L_Name);
Выход:
Станьте бизнес-аналитиком, использующим искусственный интеллект, с помощью программы бизнес-анализа Университета ПердьюИзучите сейчас
Неявные индексы
Отсортированные списки можно создавать с использованием индексов, а не создавать новые отсортированные таблицы, для хранения которых требуется много места. Когда столбец идентифицирован как первичный ключ или специальный, неявные индексы генерируются автоматически. По таким столбцам нам не нужно строить индекс.
Синтаксис:
CREATE INDEX IN_Name ON TN_Name(Attribute1..);
Код:
СОЗДАТЬ ИНДЕКС ind_stu_det ON Student_DB (Regno);
Таблица Student_db имеет такие атрибуты, как regno, name, dept и т. д. Столбец или атрибут могут идентифицировать ограничения первичного ключа или другие уникальные ограничения, при которых индексы генерируются автоматически без какого-либо вмешательства.
Выход:
Команда DROP INDEX
Команду SQL DROP можно использовать для удаления индекса. При понижении индекса будьте осторожны, поскольку производительность может либо замедлиться, либо улучшиться. Эта команда обычно используется для удаления индекса указанной таблицы данных.
Синтаксис:
УДАЛИТЬ INDEX name_of_index в Table_name;
Код:
УДАЛИТЬ ИНДЕКС имя_индекса;
Выход:
Когда следует избегать индексов
Хотя индексы предназначены для повышения эффективности базы данных, есть случаи, когда их следует избегать, например:
- На маленьких столиках
- Таблицы, которые получают много больших пакетных обновлений или вставок.
- Столбцы с большим количеством нулевых значений
- Столбцы, которыми часто манипулируют
- Где столбцы регулярно манипулируются.
- Если атрибут или поле часто обновляются
- Атрибуты не часто используются в качестве состояния запроса.
Преимущества индекса в SQL
- Ускорить запрос выбора
- Помогает сделать строку особенной или без дубликатов (основная, уникальная).
- Мы можем проверить широкие строковые значения, если индекс установлен на полнотекстовый индекс, и найти слово из предложения.
Станьте самым высокооплачиваемым экспертом по бизнес-анализу с магистерской программой бизнес-аналитикаИзучите сейчас
Недостатки индекса в SQL
- Индексы занимают больше места на диске.
- INSERT, UPDATE и DELETE замедляются из-за индексов, но UPDATE ускоряется, если условие WHERE имеет индексированное поле. Поскольку индексы должны изменяться при каждом процессе, операции INSERT, UPDATE и DELETE выполняются медленнее.
Заключение
SQL Server в основном используется для хранения записей в схеме базы данных в виде страниц. В основном размер страницы записей составляет около 8 КБ. Каждая база данных имеет как минимум два файла: один для данных, который имеет тип файла по умолчанию .mdf, и один для журнала, который имеет тип файла по умолчанию .ldf. Для каждой таблицы в базе данных имеется одна или несколько страниц. SQL Server использует специальную коллекцию страниц, называемую IAM (карта распределения индексов), для отслеживания этих страниц.
В этой статье вы узнали об индексах с синтаксисом и примерами. Чтобы получить опыт в языке программирования SQL, вы можете присоединиться к нашему курсу Simplilearn «Бизнес-аналитика для принятия стратегических решений с IIT Roorkee». Начните бесплатно изучать самые востребованные сегодня навыки. На курсах особое внимание уделялось развитию хороших основных навыков для будущего карьерного роста.
Есть вопросы к нам? Оставьте их в комментариях к этой статье, и наши эксперты ответят вам по ним как можно скорее!
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)