- •Модели и структуры данных
- •Файловые системы и базы данных.
- •Последовательный и ассоциативный доступ в файловых системах.
- •Файловая информационная система (то же самое что и 2 вопрос).
- •Системы управления базами данных (субд).
- •Основные функции субд и их реализация.
- •7. Архитектуры доступа к данным. Режимы работы с бд.
- •8. Функции и обзор современных субд Основные функции:
- •9. Логическая и физическая модели данных.
- •10. Основные этапы проектирования базы данных (бд).
- •11. Иерархическая, сетевая, реляционная и другие модели данных.
- •12.Определение реляционной модели.
- •14. Основные операции с отношениями (объединение, разность, пересечение, произведение, проекция и выборка).
- •15. Условия целостности данных.
- •18. Вторая нормальная форма: отсутствие зависимостей частичного ключа.
- •19.Третья нормальная форма: устранение транзитивных зависимостей.
- •20. Достоинства и недостатки нормализации.
- •21.Процедура индексирования в базах данных.
- •22.Правила индексирования.
- •23. Задачи и типовая структура системного каталога.
- •24. Характеристика субд ms sql Server. Основные компоненты ms sql Server.
- •25.Объекты базы данных sql Server (Таблицы, Индексы, Представления, Хранимые процедуры, Пользователи, Роли, Правила, Триггеры, Ограничение целостности).
- •26. Используемые типы данных в sql Server.
- •27.Язык определения данных реляционной модели (ddl).
- •28.Создание базы данных. Общий формат оператора create database.
- •29.Создание таблиц. Инструкция create table. Определение столбцов. Предложения primary key и foreign key.
- •30.Инструкция alter table. Добавление столбца. Удаление столбца. Изменение первичных и вторичных ключей.
- •31. Создание индексов. Общий формат оператора create index. Удаление индекса.
- •32. Создание представлений (view). Общий формат оператора create view. Горизонтальное представление. Вертикальное представление. Удаление представления.
- •33. Язык манипулирования данными реляционной модели (dml).
- •34. Оператор выборки select. Общий формат оператора select.
- •35. Предложение select. Предложение from. Предложение where.
- •36. Предложение where. Сравнение. Проверка на принадлежность диапазону. Проверка на членство в множестве. Проверка на соответствие шаблону.
- •37. Правила выполнения запроса select.
- •38. Применение агрегатных функций в запросах.
- •39. Правила выполнения запросов, в которых участвуют агрегатные функции.
- •40. Запросы с группировкой. Предложение group by.
- •41. Правила выполнения запросов с группировкой.
- •42. Вложенные запросы.
- •46. Обеспечения безопасности данных в ms sql Server.
- •47. Копирование и восстановление данных в ms sql Server.
- •48. Хранимые процедуры и функции. Триггеры.
37. Правила выполнения запроса select.
Назначение простого оператора SELECT состоит в выборке и отображении
данных одной таблицы базы данных. Это очень мощный оператор, способный
выполнять действия, эквивалентные операциям реляционной алгебры, таким
как выборка, проекция и объединение.
Результаты запроса, возвращаемые инструкцией SELECT, получаются в результате поочередного применения входящих в инструкцию предложений, в следующем порядке.
1. Берется таблица, указанная в предложении FROM.
2. Если имеется предложение WHERE, применить заданное в нем условие отбора к каждой строке таблицы. Если при этом получается значение TRUE, то текущая строка добавляется в результирующую таблицу, если получается значение FALSE, то строка отбрасывается.
3. Далее выполняется предложение SELECT, которое из указанных в нем столбцов создает строки результирующей таблицы.
4. Если в предложении SELECT указано ключевое слово DISTINCT, то повторяющиеся строки из результирующей таблицы удаляются.
5. Если в запросе имеется предложение ORDER BY, результирующая таблица сортируется.
38. Применение агрегатных функций в запросах.
Агрегатные функции предназначены для вычисления итоговых значений операций над всеми записями набор данных. Многие запросы к базе данных требуют узнать всего одно или несколько значений, которые подытоживают информацию, содержащуюся в базе данных. Например:
– Какова общая сумма плановых продаж для всех служащих?
– Каковы наибольший и наименьший объемы продаж?
– Сколько служащих перевыполнили план?
– Какова средняя стоимость заказа?
– Какова средняя стоимость заказа в каждом офисе?
– Сколько служащих закреплено за каждым офисом?
В SQL запросы такого типа можно создавать с помощью агрегатных функций.
Агрегатные функции используются подобно именам полей в операторе
SELECT, но с одним исключением: они берут имя поля как аргумент. Результат, возвращаемый всеми функциями, кроме COUNT, имеет тот же тип данных, что и исходный столбец. Функция COUNT всегда возвращает целое число, независимо от типа данных исходного столбца.
Агрегатная Функция |
Тип исходных данных |
Результат |
Пример |
AVG |
Числовой |
Среднеарифметическое значение выбранных значений данного поля |
SELECT AVG(QUOTA), AVG(SALES) FROM SLUZHASCHIE |
SUM |
Числовой |
Сумма всех выбранных значений данного поля |
SELECT SUM(QUOTA), SUM(SALES) FROM SLUZHASCHIE |
MIN |
Числовые, строковые значения, значения даты/ времени |
Наименьшее из всех выбранных значений данного поля |
SELECT MIN(QUOTA), MAX(QUOTA) FROM SLUZHASCHIE |
MAX |
Наибольшее из всех выбранных значений данного поля | ||
COUNT |
Любой |
Количество строк или непустых значений полей, которые выбрал запрос |
SELECT COUNT(ID_CLN) FROM CLIENTY |
39. Правила выполнения запросов, в которых участвуют агрегатные функции.
Таблица результатов запроса, в котором участвуют агрегатные функции,
генерируется следующим образом.
1. Берется таблица, указанная в предложении FROM.
2. Если имеется предложение WHERE, применить заданное в нем условие отбора к каждой строке таблицы. Если при этом получается значение TRUE, то текущая строка добавляется в результирующую таблицу, если получается значение FALSE, то строка отбрасывается.
3. Для каждой из оставшихся строк вычислить значение каждого элемента в списке возвращаемых столбцов и создать одну строку таблицы результатов запроса.
Смысл запроса, в котором участвуют агрегатные функции, легче понять,
если разбить процесс выполнения на два этапа: сначала представить выполнение запроса без агрегатных функций, а затем представить, как СУБД применяет агрегатные функции к результатам запроса, формируя при этом итоговую строку.