SQL.pptx
- Количество слайдов: 16
Structured Query Language (SQL) БАЗОВЫЕ СВЕДЕНИЯ О ЯЗЫКЕ СТРУКТУРИРОВАННЫХ ЗАПРОСОВ SQL
ОСНОВНЫЕ ПОНЯТИЯ ЯЗЫКА SQL —(Structured Query Language) это язык структурированных запросов. SQL был специально разработан для взаимодействия с реляционными базами данных (создание, модификация, управление). Основные операторы определения структуры данных: CREATE (создание); ALTER (изменение); DROP (удаление). Основные операторы работы с данными: SELECT (выборка); INSERT (вставка); UPDATE (обновление); DELETE (удаление).
ОСНОВНЫЕ ИНСТРУКЦИИ ДЛЯ ОПРЕДЕЛЕНИЯ СТРУКТУРЫ ДАННЫХ CREATE - создание нового объекта (базы данных, таблицы, индекса), например: CREATE DATABASE my_db; ALTER - изменение структуры существующей таблицы (добавление, удаление, изменение поля), например: ALTER TABLE table_name ADD column_name datatype DROP – удаление объекта (базы данных, таблицы, индекса) , например: DROP TABLE table_name
ОСНОВНЫЕ ИНСТРУКЦИИ ОПЕРАЦИЙ С ДАННЫМИ: SELECT – представляет собой основу SQL. Используется для получения данных из одной или нескольких таблиц. SELECT column-list FROM table-list FROM – определяет таблицы применяемые для выборки строк. или запросы,
ПРИМЕР (ЗАПРОС «ТОВАРЫ_И_ЦЕНЫ» ): SELECT Товары. Наименование. Товара, Товары. Цена. За. Упаковку FROM Товары;
ОСНОВНЫЕ ИНСТРУКЦИИ: УСЛОВИЕ, СОРТИРОВКА ДАННЫХ WHERE – позволяет налагать ограничения на количество строк, получаемых с помощью инструкции SELECT. ORDER BY – определяет порядок, в котором должны быть отсортированы возвращаемые строки (ASC – по возрастанию, DESC – по убыванию).
ПРИМЕР (ЗАПРОС «ТОВАРЫ_ВРЕДИТЕЛИ» ): SELECT Товары. Наименование. Товара, Товары. Код. Категории, Товары. Цена. За. Упаковку FROM Товары WHERE (((Товары. Код. Категории)=18) AND ((Товары. Цена. За. Упаковку) Between 10 And 30)) ORDER BY Товары. Наименование. Товара;
ОСНОВНЫЕ ДОПУСТИМЫЕ ОПЕРАТОРЫ ПРИ ИСПОЛЬЗОВАНИИ WHERE: Оператор = Описание Равно <> Не равно > Больше чем < Меньше чем >= Больше или равно <= Меньше или равно BETWEEN LIKE Выбор значения в заданном диапазоне Поиск по шаблону
ОСНОВНЫЕ ИНСТРУКЦИИ: ГРУППИРОВКА ДАННЫХ GROUP BY – используется для группирования результата одного или нескольких столбцов. Для того, чтобы найти общую сумму заказа для каждого клиента, необходимо выполнить запрос: SELECT Клиент, SUM(Стоимость. Заказа) FROM Orders GROUP BY Клиент; Результат выполнения запроса:
ОСНОВНЫЕ ИНСТРУКЦИИ: ГРУППИРОВКА ДАННЫХ HAVING - аналогична конструкции WHERE, но применяется после агрегирования данных (т. к. условие WHERE не может использоваться в функциях агрегирования): Для того, чтобы найти клиентов, сумма заказов которых больше 1000 р. , необходимо выполнить запрос: SELECT Клиент, SUM(Стоимость. Заказа) FROM Orders GROUP BY Клиент HAVING Sum(Orders. Стоимость. Заказа) > 1000; Результат выполнения запроса:
ИНСТРУКЦИИ ДЛЯ ИЗМЕНЕНИЯ ДАННЫХ: INSERT– добавление новых записей (строк) в таблицу. UPDATE – модификация данных в одном или нескольких полях таблицы. DELETE – удаление всех строк, удовлетворяющих указанным критериям.
ПРИМЕР ДОБАВЛЕНИЯ ДАННЫХ: Таблица “Persons”: P_Id 1 2 3 Last. Name Hansen Svendson Pettersen First. Name Ola Tove Kari Address Timoteivn 10 Borgvn 23 Storgt 20 City Sandnes Stavanger Запрос на добавление: INSERT INTO Persons VALUES (4, 'Nilsen', 'Johan', 'Bakken 2', 'Stavanger'); Результат выполнения запроса: P_Id 1 2 3 4 Last. Name Hansen Svendson Pettersen Nilsen First. Name Ola Tove Kari Johan Address Timoteivn 10 Borgvn 23 Storgt 20 Bakken 2 City Sandnes Stavanger
ПРИМЕР ОБНОВЛЕНИЯ ДАННЫХ: Таблица “Persons”: P_Id 1 2 3 4 5 Last. Name Hansen Svendson Pettersen Nilsen Tjessem First. Name Ola Tove Kari Johan Jakob Address Timoteivn 10 Borgvn 23 Storgt 20 Bakken 2 City Sandnes Stavanger Запрос на обновление: UPDATE Persons SET Address='Nissestien 67', City='Sandnes' WHERE Last. Name='Tjessem' AND First. Name='Jakob‘; Результат выполнения запроса: P_Id Last. Name First. Name Address City 1 Hansen Ola Timoteivn 10 Sandnes 2 Svendson Tove Borgvn 23 Sandnes 3 Pettersen Kari Storgt 20 Stavanger 4 Nilsen Johan Bakken 2 Stavanger 5 Tjessem Jakob Nissestien 67 Sandnes
ПРИМЕР УДАЛЕНИЯ ДАННЫХ: P_Id First. Name Address City 1 Hansen Ola Timoteivn 10 Sandnes 2 Svendson Tove Borgvn 23 Sandnes 3 Pettersen Kari Storgt 20 Stavanger 4 Nilsen Johan Bakken 2 Stavanger 5 Таблица “Persons”: Last. Name Tjessem Jakob Nissestien 67 Sandnes Запрос на удаление: DELETE FROM Persons WHERE Last. Name='Tjessem' AND First. Name='Jakob‘; P_Id Результат выполнения запроса: Last. Name First. Name Address City 1 Hansen Ola Timoteivn 10 Sandnes 2 Svendson Tove Borgvn 23 Sandnes 3 Pettersen Kari Storgt 20 Stavanger 4 Nilsen Johan Bakken 2 Stavanger
ОСНОВНЫЕ ИНСТРУКЦИИ ОПЕРАЦИЙ С ДАННЫМИ: JOIN – используется в случае выборки данных из нескольких таблиц. SELECT – из одной таблицы, затем SELECT соединяем JOIN. SELECT <поле> FROM <таблица> JOIN <таблица>ON <связываемые поля> Может быть INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN.
ПРИМЕР (ЗАПРОС «КЛИЕНТЫ_БЕЗ_ЗАКАЗОВ» ): SELECT Клиенты. Фамилия, Клиенты. Имя FROM Клиенты LEFT JOIN Заказы ON Клиенты. [Код. Клиента] = Заказы. [Код. Клиента] WHERE (((Заказы. Код. Клиента) Is Null));
SQL.pptx