Синтаксические конструкции SQL. Оператор SELECT. Лекция 2

Содержание

Слайд 2

I. Синтаксические конструкции SQL Предложения Идентификаторы (Имена) Константы Операторы Зарезервированные и

I. Синтаксические конструкции SQL

Предложения
Идентификаторы (Имена)
Константы
Операторы
Зарезервированные и ключевые слова
Псевдостолбцы и таблица DUAL

Слайд 3

1. Предложения SQL Любое предложение SQL состоит из ключевых и зарезервированных

1. Предложения SQL

Любое предложение SQL состоит из ключевых и зарезервированных слов

и слов, определяемых пользователем в соответствии с синтаксическими правилами:
Слайд 4

Каждая фраза предложения должна начинаться с новой строки; Начало фразы должно

Каждая фраза предложения должна начинаться с новой строки;
Начало фразы должно быть

выравнено с началом остальных фраз предложения;
Части фразы, не помещающиеся в строку, должны начинаться с новой строки с некоторым отступом относительно начало всей фразы;
Для записи ключевых слов используйте прописные буквы;
Для записи определяемых пользователем слов используйте строчные буквы;
Каждое предложение SQL должно заканчиваться символом точка с запятой (;)
Слайд 5

Условные обозначения

Условные обозначения

Слайд 6

Все предложения SQL делятся на три группы: Предложения манипуляции данными (Data

Все предложения SQL делятся на три группы:

Предложения манипуляции данными (Data Manipulation

Language, DML)
Предложения определённых данных (Data Definition Language, DDL)
Предложения определения доступа к данным (Data Control Language, DCL)
Слайд 7

2. Идентификаторы (имена) - это пользовательские или системные имена объектов БД.

2. Идентификаторы (имена)

- это пользовательские или системные имена объектов БД.
Они

должны или могут присваиваться базам данных, таблицам, ограничениям и правилам в таблице, столбцам таблицы, индексам, курсорам, представлениям, процедурам, триггерам и т.п.
Слайд 8

Идентификатор объекта создается при определении объекта. CREATE TABLE users ( id_user

Идентификатор объекта создается при определении объекта.
CREATE TABLE users
( id_user int (10)

AUTO_INCREMENT, name varchar(20) NOT NULL, email varchar(50) NOT NULL, password varchar(15) NOT NULL, PRIMARY KEY (id_user) );
Слайд 9

Затем идентификатор используется для обращения к объектам. SELECT Товар.Название, Year(Продажа.Дата) AS

Затем идентификатор используется для обращения к объектам.
SELECT Товар.Название, Year(Продажа.Дата) AS Год,

Month(Продажа.Дата) AS Месяц FROM Товар INNER JOIN Продажа ON Товар.[Код Товара]=Продажа.[Код Товара]
Слайд 10

3. Константы и NULL-значения Числовые константы (546, -777, 5Е6б -9Е-2) Булевы

3. Константы и NULL-значения

Числовые константы (546, -777, 5Е6б -9Е-2)
Булевы значения (TRUE,

FALSE)
Строковые константы (‘группы ИСИП-19’)
Даты (08-09-2020 12:15:45, 8-СЕНТЯБРЬ-2020)
Слайд 11

Специальное значение – NULL (пустое или несуществующее значение). Рассматривается как «отсутствие

Специальное значение – NULL (пустое или несуществующее значение).
Рассматривается как «отсутствие информации»,

а не как пустые строки, пробелы или нули.
Слайд 12

4. Операторы - Это символ или имя, обозначающий действие, выполняемое над одним или несколькими выражениями.

4. Операторы

- Это символ или имя, обозначающий действие, выполняемое над одним

или несколькими выражениями.
Слайд 13

Арифметические операторы

Арифметические операторы

Слайд 14

Операторы сравнения

Операторы сравнения

Слайд 15

Логические операторы

Логические операторы

Слайд 16

5. Зарезервированные и ключевые слова Ключевые слова SQL – это слова,

5. Зарезервированные и ключевые слова

Ключевые слова SQL – это слова, которые

связаны с функционированием реляционной базы данных, их нельзя использовать для других целей.
Слайд 17

6. Псевдостолбцы, таблица DUAL Псевдостолбец-это функция, которая возвращает сгенерированное системой значение.

6. Псевдостолбцы, таблица DUAL

Псевдостолбец-это функция, которая возвращает сгенерированное системой значение. 
таблица DUAL

– таблица, автоматически создаваемая ORACLE для каждого пользователя. В ней один столбец с именем DUMMY и типом данных VARCHAR 2(1). В единственной строке хранится значение ‘X’.
Слайд 18

II. Оператор SELECT SELECT (от англ. select — «выбрать») — оператор

II. Оператор SELECT

SELECT (от англ. select — «выбрать») — оператор запроса (DML/DQL) в языке SQL, возвращающий набор

данных (выборку) из базы данных.
Оператор возвращает ноль или более строк. Список возвращаемых столбцов задается в части оператора, называемой предложением SELECT. 
Слайд 19

Оператор SELECT состоит из нескольких предложений (разделов): SELECT определяет список возвращаемых

Оператор SELECT состоит из нескольких предложений (разделов):

SELECT определяет список возвращаемых столбцов

(как существующих, так и вычисляемых), их имена, ограничения на уникальность строк в возвращаемом наборе, ограничения на количество строк в возвращаемом наборе;
FROM задаёт табличное выражение, которое определяет базовый набор данных для применения операций, определяемых в других предложениях оператора;
WHERE задает ограничение на строки табличного выражения из предложения FROM;
GROUP BY объединяет ряды, имеющие одинаковое свойство с применением агрегатных функций
HAVING выбирает среди групп, определённых параметром GROUP BY
ORDER BY задает критерии сортировки строк; отсортированные строки передаются в точку вызова.
Слайд 20

Оператор SELECT имеет следующую структуру: SELECT [ALL | DISTINCT ] {*|[имя_столбца

Оператор SELECT имеет следующую структуру:

SELECT [ALL | DISTINCT ] {*|[имя_столбца
[AS

новое_имя]]} [,...n]
FROM имя_таблицы [[AS] псевдоним] [,...n]
[WHERE ] <условие поиска>
[GROUP BY имя_столбца [,...n]]
[HAVING <критерии выбора групп>]
[ORDER BY имя_столбца [,...n]]
Слайд 21

Параметры оператора WHERE — используется для определения, какие строки должны быть

Параметры оператора

WHERE — используется для определения, какие строки должны быть выбраны или

включены в GROUP BY.
Слайд 22

GROUP BY — необязательный параметр операторa SELECT, для группировки строк по

GROUP BY

 — необязательный параметр операторa SELECT, для группировки строк по результатам агрегатных

функций (MAX, SUM, AVG, …).
Необходимо, чтобы в SELECT были заданы только требуемые в выходном потоке столбцы, перечисленные в GROUP BY и/или агрегированные значения. Распространённая ошибка — указание в SELECT столбца, пропущенного в GROUP BY.
Слайд 23

HAVING фильтруются группы строк объекта в соответствии с указанным условием;

HAVING

фильтруются группы строк объекта в соответствии с указанным условием;

Слайд 24

ORDER BY Сортировка может производиться как по возрастанию, так и по

ORDER BY

 Сортировка может производиться как по возрастанию, так и по убыванию

значений.
Параметр ASC (по умолчанию) устанавливает порядок сортировки по возрастанию, от меньших значений к большим.
Параметр DESC устанавливает порядок сортировки по убыванию, от больших значений к меньшим.
Слайд 25

Оператор LIKE используется в предложении WHERE для поиска заданного шаблона в

Оператор LIKE

используется в предложении WHERE для поиска заданного шаблона в столбце.
В

сочетании с оператором LIKE используются два подстановочных знака:
% - Знак процента представляет нулевой, один или несколько символов
_ - Подчеркнутый символ представляет собой один символ