Oracle SQL. 100 шагов от новичка до профессионала. 20 дней новых знаний и практики. Максим Михайлович Чалышев
данных может существенно снизиться.
Индексы рекомендуется создавать на колонках, которые используются в операциях объединения.
Индекс автоматически создается для столбцов первичных ключей и для столбцов, на которых есть ограничение уникальности.
При наименовании индексов следует придерживаться следующего правила: IDx_имя таблицы_имена_колонок.
Вопросы учеников
Если таблица небольшая, в ней не более 200 записей например, нужен ли в такой таблице индекс?
Нет, индексы для такой таблицы, скорее всего, не понадобятся.
Какие типы индексов существуют в различных СУБД?
Существует множество разных типов индексов, но более подробно мы разберем эту тему в следующих шагах.
В моей базе данных фильтр (WHERE) данных, поиск данных всегда осуществляется одновременно по определенному набору колонок. Какие индексы следует использовать в этом случае?
В этом случае создается композитный индекс.
Синтаксис:
CREATE INDEX IDx_NAME ON TABLE_NAME (column_NAME1, column_NAMEn) REVERSE;
Контрольные вопросы и задания для самостоятельного выполнения
1. В таблице есть ограничение уникальности, имеет ли смыcл создавать на этой колонке индекс?
2. В некоторой таблице постоянно обновляются записи, следует ли использовать индексы в этой таблице?
3. Создайте индекс на колонку COLOR в таблице AUTO.
4. Создайте реверсивный индекс для колонки YEAROLD в таблице MAN.
День третий
Шаг 11. Простые запросы
Введение
А сейчас отвлечемся на некоторое время от структуры таблиц и поговорим о том, как извлекать данные из базы.
Логично предположить, что если у нас есть данные, нам необходимо их выбирать из базы, обрабатывать и выводить на экран в удобном, понятном, читаемом виде.
В нашей рабочей схеме уже есть три таблицы с данными – это таблицы AUTO, CITY, MAN.
Напомню, что в таблице MAN хранятся сведения о покупателях: их имена, их возраст, CITY – это данные о городах, а таблица AUTO содержит сведения об автомобилях некоторого автосалона.
Если человек приобретает автомобиль, то в таблице AUTO в колонке PHONEnum выставляется номер телефона человека, который приобрел машину.
Для извлечения данных из базы и вывода этих данных на экран используются команды, называемые запросами к базе данных, специальная команда SQL – SELECT. Эта команда является наиболее часто используемой командой в языке SQL и постоянно применяется на практике.
Теория и практика
Начнем с самого легкого запроса, рассмотрим синтаксис самого простого оператора SELECT:
SELECT * FROM TABLE_NAME
Здесь TABLE_NAME – имя таблицы, из которой мы запрашиваем данные.
Символ * означает, что мы выводим на экран данные из всех колонок.
Откройте тестовую среду и выполните запрос
SELECT * FROM CITY;
Рисунок 7. Запрос из таблицы CITY
На экран выведены названия колонок в первой строке, а также данные в каждой