Изменение записей в запросе

FROM Авторы

Пример 3

УДАЛЕНИЕ ЗАПИСЕЙ В ЗАПРОСЕ

INSERT INTO Жанр

INSERT INTO Авторы

ДОБАВЛЕНИЕ ЗАПИСЕЙ В ЗАПРОСЕ

Лекция 4. Ввод, удаление и изменение данных с помощью SQL

Задача 4.

ПРЕДЛОЖЕНИЕ HAVING

Целью предложения GROUP BY является формирование строк для последующих действий над группами посредством других операций. Предложение HAVING используется для фильтрации записей, полученных в результате группировки GROUP BY.

HAVING является не обязательным. Если это предложение присутствует в команде SQL, то оно должно располагаться после предложения GROUP BY.

Функция предложения HAVING схожа с WHERE – используются для фильтрации. WHERE определяет какие записи должны участвовать в группировании а, HAVING определяет какие, из получившихся в результате группировки, записи будут включены в результатирующую выборку.

Решение: SELECT * FROM Книги

WHERE Издательство = 4

GROUP BY Автор HAVING Стоимость > 150;

Все новые записи вводятся в таблицу при помощи конструкции INSERT, которая в простейшем случае имееттакой синтаксис:

INSERT INTO <имя таблицы>

VALUES <значения>;

Пример 1. Чтобы добавить строку в таблицу Авторы, можно использовать следующую команду:

VALUES (3, 'Голицина О.Л.', 'Ольга', 'Леонидовна');

Если нужно вставить NULL-значение, то его необходимо указать как обычное значение.

Пример 2

VALUES (4, NULL);

Строки из таблицы можно исключить с помощью команды обновления DELETE. По этой команде исключаются только целые строки, а не отдельные значения полей. Таким образом, имя поля не является обязательным аргументом для выполнения этой команды и воспринимается как ошибочный аргумент. Синтаксис команды следующий:

DELETE FROM <имя таблицы>

WHERE <критерии отбора>;

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

DELETE FROM <имя таблицы>;

В результате выполнения этой команды таблица становится пустой и ее можно удалить с помощью команды

DROP TABLE <имя таблицы>;

Чаще из таблицы требуется удалить только некоторые строки. Чтобы их определить, нужно, как и для запросов на выборку, использовать <критерии отбора>.

DELETE *

WHERE Фамилия = 'Голицина О.Л.';

С инструкцией DELETE следует обращаться с величайшей осторожностью. Можно непреднамеренно удалить все строки таблицы. Инструкция DELETE без предложения WHERE применяется чрезвычайно редко, поэтому, прежде чем выполнить запрос, еще раз убедитесь в правильности написания инструкции DELETE.

Для изменения существующих значений в столбцах таблицы можно использовать инструкцию UPDATE. Упрощенный синтаксис этой инструкции следующий:

UPDATE <имя таблицы>

SET <имя столбца1>= значение,..., <имя столбца n>= значение

WHERE <критерии отбора>;

Нет нужды ограничиваться обновлением значения единственного столбца в результате выполнения команды UPDATE. В предложении SET можно указать любое количество значений для столбцов, разделенных запятыми. Все указанные изменения выполняются для каждой строки таблицы, удовлетворяющей предикату WHERE.

Пример 4

UPDATE Жанр SET Жанр = "Рассказ"

WHERE [Код жанра]=2;

Задачи для самостоятельной работы

1. Запишите команду, которая вводит следующие значения в заданном порядке в таблицу Авторы: Код автора = 4, Фамилия = Грошев С.В., значения в полях Имя и Отчество отсутствуют(NULL).

2. Создать запрос, удаляющий все книги стоимостью менее 50 руб.

3. Запишите команду, которая позволяет продавать книги с 10% скидкой, если заказ более 50 штук.


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



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