Скачать презентацию Основы SQL-1 1 2 3 4 5 Категории Скачать презентацию Основы SQL-1 1 2 3 4 5 Категории

ИиМ-Лк_2-1 (Основы SQL-1).ppt

  • Количество слайдов: 26

Основы SQL-1 1. 2. 3. 4. 5. Категории команд SQL Оператор Select - выборка Основы SQL-1 1. 2. 3. 4. 5. Категории команд SQL Оператор Select - выборка данных Простая выборка данных Условия и сортировка Вычисляемые поля и итоговые функции

Категории команд SQL DDL – язык определения данных; DML – язык манипулирования данными; DQL Категории команд SQL DDL – язык определения данных; DML – язык манипулирования данными; DQL – язык запросов; DCL – язык управления данными; команды администрирования данных; команды управления транзакциями

Категории команд SQL Манипулирование данными (DML) Язык манипулирования данными (Data Manipulation Language, DML) используется Категории команд SQL Манипулирование данными (DML) Язык манипулирования данными (Data Manipulation Language, DML) используется для манипулирования информацией внутри объектов реляционной базы данных посредством трех основных команд: INSERT, UPDATE, DELETE. Выборка данных (DQL) Язык запросов DQL включает одну команду SELECT. Эта команда вместе со своими многочисленными опциями и предложениями используется для формирования запросов к реляционной базе данных.

Оператор Select - выборка данных Общая форма записи SELECT [ALL | DISTINCT ] {*|[имя_столбца Оператор Select - выборка данных Общая форма записи SELECT [ALL | DISTINCT ] {*|[имя_столбца [AS новое_имя]]} [, . . . n] FROM имя_таблицы [, . . . n] [WHERE <условие_поиска>] [GROUP BY имя_столбца [, . . . n]] [HAVING <критерии выбора групп>] [ORDER BY имя_столбца [, . . . n]]

Оператор Select - выборка данных Оператор SELECT определяет поля (столбцы), которые будут входить в Оператор Select - выборка данных Оператор SELECT определяет поля (столбцы), которые будут входить в результат выполнения запроса. В списке они разделяются запятыми и приводятся в такой очередности, в какой должны быть представлены в результате запроса. Если используется имя поля, содержащее пробелы или разделители, его следует заключить в квадратные скобки. Символом * можно выбрать все поля. Если обрабатывается ряд таблиц, то (при наличии одноименных полей в разных таблицах) в списке полей используется полная спецификация поля, т. е. Имя_таблицы. Имя_поля.

Оператор Select - выборка данных Предложение FROM задает имена таблиц и просмотров, которые содержат Оператор Select - выборка данных Предложение FROM задает имена таблиц и просмотров, которые содержат поля, перечисленные в операторе SELECT. Порядок предложений и фраз в операторе SELECT не может быть изменен. Только два предложения SELECT и FROM являются обязательными, все остальные могут быть опущены.

Простая выборка данных id fam predmet rate 1 Петров Математика 65 2 Васечкин Математика Простая выборка данных id fam predmet rate 1 Петров Математика 65 2 Васечкин Математика 71 3 Петров Информатика 84 4 Борискина Математика 74 5 Борискина Информатика 79 6 Васечкин Информатика 85 7 Васечкин Физика 67 8 Петров Физика 89 9 Борискина Физика 73 Таблица EGE

Простая выборка данных Select * from ege; Результат: вся исходная таблица. Простая выборка данных Select * from ege; Результат: вся исходная таблица.

Условия и сортировка Для определения условия используется предложение WHERE. Для задания сложно условия можно Условия и сортировка Для определения условия используется предложение WHERE. Для задания сложно условия можно использовать логические операторы and, or, not; оператор диапазона BETWEEN; оператор принадлежности IN; оператор соответствия шаблону LIKE.

Условия и сортировка Select fam, rate From ege Where rate>80; fam Петров Васечкин Петров Условия и сортировка Select fam, rate From ege Where rate>80; fam Петров Васечкин Петров rate 84 85 89

Условия и сортировка Select fam, rate, predmet From ege Where rate>70 and (predmet='Математика' or Условия и сортировка Select fam, rate, predmet From ege Where rate>70 and (predmet='Математика' or predmet='Физика') fam Васечкин Борискина Петров Борискина rate 71 74 89 73 predmet Математика Физика

Условия и сортировка Select fam, rate, predmet From ege Where rate>70 and predmet IN Условия и сортировка Select fam, rate, predmet From ege Where rate>70 and predmet IN ('Математика', 'Физика')

Условия и сортировка Select fam, rate, predmet From ege Where rate BETWEEN 75 and Условия и сортировка Select fam, rate, predmet From ege Where rate BETWEEN 75 and 80 fam Борискина rate 79 predmet Информатика

Условия и сортировка Select fam, rate, predmet From ege Where fam LIKE 'П*' and Условия и сортировка Select fam, rate, predmet From ege Where fam LIKE 'П*' and predmet LIKE '*тика'; fam Петров rate predmet 65 Математика 84 Информатика

Условия и сортировка В общем случае строки в результирующей таблице SQLзапроса никак не упорядочены. Условия и сортировка В общем случае строки в результирующей таблице SQLзапроса никак не упорядочены. Для сортировки в оператор SELECT помещается фраза ORDER BY, которая сортирует данные в заданной последовательности. Сортировка может выполняться по нескольким полям, в этом случае они перечисляются за ключевым словом ORDER BY через запятую. Способ сортировки задается ключевым словом, указываемым в рамках параметра ORDER BY следом за названием поля, по которому выполняется сортировка. По умолчанию реализуется сортировка по возрастанию (ASC, для обратной последовательности – DESC). Фраза ORDER BY всегда должна быть последним элементом в операторе SELECT.

Условия и сортировка Select fam, predmet, rate From ege where rate>75 order by rate Условия и сортировка Select fam, predmet, rate From ege where rate>75 order by rate DESC; fam predmet Петров Физика Васечкин Информатика Петров Информатика Борискина Информатика rate 89 85 84 79

Условия и сортировка Select fam, predmet, rate From ege where rate>75 order by fam, Условия и сортировка Select fam, predmet, rate From ege where rate>75 order by fam, rate DESC; fam predmet Борискина Информатика Васечкин Информатика Петров Физика Петров Информатика rate 79 85 89 84

Вычисляемые поля и итоговые функции В общем случае для создания вычисляемого (производного) поля в Вычисляемые поля и итоговые функции В общем случае для создания вычисляемого (производного) поля в списке SELECT следует указать некоторое выражение языка SQL. В этих выражениях применяются арифметические операции сложения, вычитания, умножения и деления, а также встроенные функции языка SQL. Стандарты SQL позволяют явным образом задавать имена столбцов результирующей таблицы, для чего применяется фраза AS.

Вычисляемые поля и итоговые функции SELECT fam, predmet, rate, (round(rate/20)) AS prc FROM ege Вычисляемые поля и итоговые функции SELECT fam, predmet, rate, (round(rate/20)) AS prc FROM ege WHERE predmet='Физика' ORDER BY (round(rate/20)) DESC; fam predmet Борискина Физика Петров Физика Васечкин Физика rate 73 89 67 prc 4 4 3

Вычисляемые поля и итоговые функции SELECT fam, LEFT(predmet, 3) as skr, rate FROM ege Вычисляемые поля и итоговые функции SELECT fam, LEFT(predmet, 3) as skr, rate FROM ege WHERE rate >75 ORDER BY rate DESC; fam skr rate Петров Физ 89 Васечкин Инф 85 Петров Инф 84 Борискина Инф 79

Вычисляемые поля и итоговые функции С помощью итоговых (агрегатных) функций в рамках SQL-запроса можно Вычисляемые поля и итоговые функции С помощью итоговых (агрегатных) функций в рамках SQL-запроса можно получить ряд обобщающих статистических сведений о множестве отобранных значений выходного набора. Чаще всего используются следующие итоговые функции: • Count (Выражение) - определяет количество записей в выходном наборе SQL-запроса; • Min/Max (Выражение) - определяют наименьшее и наибольшее из множества значений в некотором поле запроса; • Avg (Выражение) - эта функция позволяет рассчитать среднее значение множества значений, хранящихся в определенном поле отобранных запросом записей. Оно является арифметическим средним значением, т. е. суммой значений, деленной на их количество. • Sum (Выражение) - вычисляет сумму множества значений, содержащихся в определенном поле отобранных запросом записей.

Вычисляемые поля и итоговые функции Чаще всего в качестве выражения выступают имена столбцов. Выражение Вычисляемые поля и итоговые функции Чаще всего в качестве выражения выступают имена столбцов. Выражение может вычисляться и по значениям нескольких таблиц. Все эти функции оперируют со значениями в единственном столбце таблицы или с арифметическим выражением и возвращают единственное значение. Функции COUNT, MIN и MAX применимы как к числовым, так и к нечисловым полям, тогда как функции SUM и AVG могут использоваться только в случае числовых полей.

Вычисляемые поля и итоговые функции Если список в предложении SELECT содержит итоговые функции, а Вычисляемые поля и итоговые функции Если список в предложении SELECT содержит итоговые функции, а в тексте запроса отсутствует фраза GROUP BY, обеспечивающая объединение данных в группы, то ни один из элементов списка предложения SELECT не может включать каких-либо ссылок на поля, за исключением ситуации, когда поля выступают в качестве аргументов итоговых функций.

Вычисляемые поля и итоговые функции SELECT max(rate) as maximum FROM ege (неправильно: SELECT fam, Вычисляемые поля и итоговые функции SELECT max(rate) as maximum FROM ege (неправильно: SELECT fam, predmet, max(rate) as maximum FROM ege) maximum 89

Вычисляемые поля и итоговые функции SELECT avg(rate) as fiz_sred FROM ege where predmet='Физика' fiz_sred Вычисляемые поля и итоговые функции SELECT avg(rate) as fiz_sred FROM ege where predmet='Физика' fiz_sred 76, 33333 SELECT avg(rate) as vas_sred FROM ege where fam='Васечкин' vas_sred 74, 33333

Вычисляемые поля и итоговые функции SELECT count(fam) as vas FROM ege where fam='Васечкин' vas Вычисляемые поля и итоговые функции SELECT count(fam) as vas FROM ege where fam='Васечкин' vas 3 SELECT sum(rate) as vas_vsego FROM ege where fam='Васечкин' vas_vsego 223