Использование операций реляционой алгебры в SQL

Изменение данных

Добавление данных

Удаление данных

Пример 14.

Пример 13.

Максимальный и минимальный оклад в отделах, в которых более 1 сотрудника

SELECT MAX(Оклад), MIN(Оклад)

FROM Сотрудники

GROUP BY КодОтдела

HAVING COUNT(*)>1

Сотрудники с окладом выше среднего по предприятию

SELECT Фамилия

FROM Сотрудники

WHERE Оклад> (

SELECT AVG(Оклад)

FROM Cотрудники

)

 
Команды модификации данных.

Модификация - ввод новых данных в таблицы, изменение данных, удаление данных из таблицы.

DELETE

FROM {таблица/представление}

[WHERE условие]

Удаляется из указанной таблицы все записи, удовлетворяющие условию.

DELETE

FROM Сотрудники

WHERE Фамилия=’Иванов’

INSERT

INTO {таблица/представление} (столбец [, столбец..])

VALUES ({константа/переменная}[,{константа/переменная}…])

Добавляет строку с указанными значениями.

INSERT

INTO Сотрудники (Фамилия, Имя, Отчество)

VALUES ('Иванов', 'Иван', 'Иванович')

второй вариант

INSERT

INTO {таблица/представление} (столбец [, столбец..])

подзапрос

Пример:

INSERT

INTO Начальник (фамилия, имя, отчество)

(

SELECT фамилия, имя, отчество

FROM Сотрудники

WHERE Должность= 'Инженер'

)

UPDATE {таблица/представление}

SET столбец=значение [,столбец=значение]…

WHERE условие

устанавливает значение столбцов в тех кортежах, которые удовлетворяют условию.

UPDATE {таблица/представление}

SET столбец=значение [,столбец=значение]…

FROM {базовая таблица/представление} [псевдоним]

[,{базовая таблица/представление} [псевдоним]…]

Пример:

UPDATE Поставка

SET Цена=0

WHERE КодПоставщика IN (

SELECT КодПоставщика

FROM Поставщики

WHERE Город=’Москва’

)

§ UNION- объединение.

SELECT *

FROM Сотрудники UNION Начальники

§ INTERSECT – Пересечение

SELECT *

FROM Сотрудники INTERSECT Начальники

§ EXCEPT – разность

SELECT *

FROM Сотрудники EXCEPT Начальники

§ JOIN - Соединение

1. Естественное соединение

От результата остаются только строки с совпадающими общими строками.

«Сотрудники JOIN должность» равносильно

SELECT *

FROM Сотрудники, Должность

WHERE Сотрудники.КодДолжности=Должность.КодДолжности.

2. Тета-соединение

Соединение с тета-операцией


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: