Добавление данных в таблицу.
Добавление данных в таблицу осуществляется с помощью оператора INSERT (вставка).
Простейшая форма оператора INSERT позволяет определить значения для всех полей добавляемой в таблицу записи.
INSERT INTO ИМЯ_ТАБЛИЦЫ
VALUES (Значение1, Значение2, …);
Чтобы использовать данный синтаксис нужно знать количество полей таблицы, их порядок и тип каждого поля.
Пример:
INSERT INTO DEPARTMENT
VALUES (180, ‘Отдел маркетинга’);
INSERT INTO DEPARTMENT
VALUES (100, ‘Отдел продаж’);
Пример добавление в таблицу нескольких записей из другой таблицы:
INSERT INTO department2
SELECT * FROM department
Существует общая форма оператора INSERT. Позволяет задать значения определенных полей.
INSERT INTO имя_таблицы
(Поле1, Поле2, …) VALUES (Значение1, Значение2, …);
Пример:
INSERT INTO DEPARTMENT (DEPARTMENT, DEPT_NO)
VALUES (‘Кафедра финансов’, 620);
INSERT INTP EMPLOYEE (EMP_NO, LAST_NAME, FIRST_NAME, DEPT_NO)
VALUES (10335, ‘Smith’, ‘John’, 180);
Пример простейшей формы оператора INSERT:
INSERT INTO EMPLOYEE VALUES (21374, ‘Карлова’, ‘Екатерина’, 620);
INSERT INTO EMPLOYEE VALUES (13314, ‘Иванов’, ’Иван’, 100);
INSERT INTO EMPLOYEE VALUES (5441, ‘Левин’, ’Степан’, 100);
Сервер БД поддерживает механизм ссылочной целостности.
Каждый сотрудник иметь уникальный код.
Каждый сотрудник работает ровно в одном подразделении.
Изменение данных в таблице.
Оператор UPDATE.
UPDATE имя_таблицы
SET Поле1 = Значение1,
Поле2 = Значение2, …
WHERE условие;
Выражения условия:
Поле [=|>|<|>=|<=] значение.
Т.е. в простейшей форме условие позволяет сравнить значение некоторого поля с некоторыми заданными значениями.
Пример:
UPDATE EMPLOYEE
SET LAST_NAME = ‘Зяблицкая’ WHERE EMP_NO = 13314;
Пример2:
UPDATE EMPLOYEE
SET SURNAME = ‘Путин’
WHERE surname is null
Или
UPDATE EMPLOYEE
SET SURNAME = ‘Путин’
WHERE ID_EMPLOYEE = 6
Удаление данных из таблицы.
Удалить данные занесенные в таблицу можно с помощью оператора DELETE.
DELETE FROM имя_таблицы WHERE условие;
Пример:
DELETE FROM EMPLOYEE WHERE EMP_NO = 21347;
Пример добавление ПЗ:
UPDATE EMPLOYEE
SET SALARY = SALARY * 1.1
WHERE SALARY is not null
28.02.12
SELECT – Эффективное выполнение запросов для извлечения данных.
Оператор SELECT – один из наиболее важных и самых распространенных операторов SQL. Он позволяет производить выборки данных из таблиц и преобразовывать к нужному виду полученные результаты. Будучи очень мощным, он способен выполнять действия, эквивалентные операторам реляционной алгебры, причем в пределах единственной выполняемой команды. При его помощи можно реализовать сложные и громоздкие условия отбора данных из различных таблиц.
Структура оператора SELECT.
Обработка элементов оператора SELECT выполняется в следующей последовательности:
SELECT – устанавливается, какие столбцы должны присутствовать в выходных данных;
FROM – задает имена таблиц и просмотров, которые содержат поля, перечисленные в операторе SELECT.
WHERE – выполняется фильтрация строк объекта в соответствии с заданными условиями;
GROUP BY – образуются группы строк имеющих одно и то же значение в указанном столбце;
HAVING – фильтруются группы строк объекта в соответствии с указанным условием;
ORDER BY – определяется упорядоченность результатов выполнения операторов.
Порядок предложений и фраз в операторе SELECT не может быть изменен. Только два предложения SELECT и FROM являются обязательными, все остальные могут быть опущены. SELECT – закрытая операция: результат запроса к таблице представляет собой другую таблицу.
Удаление повторов:
SELECT distinct surname
FROM employee
Предложение SELECT помимо списка полей может иметь один из двух предикатов.
Предикат ALL (Всё) задаёт включение в выходной набор всех дубликатов строк. Этот предикат действует по умолчанию.
Предикат distinct применяется в тех случаях, когда требуется отбросить блоки данных содержащие дублирующие записи в выбранных полях.
SELSCT surname, dolgnost
FROM dolgnosti, employee
WHERE dolgnosti.id_dolg = employee.iddolg and employee.iddepartment = 1
В предложении FROM указываются названия таблиц, из которых выбираются данные.
После имени таблицы через пробел можно указать её сокращенное название – псевдоним.
Вместо имени можно использовать её псевдоним.
SELSCT surname, d.dolgnost
FROM dolgnosti d, employee e
WHERE d.id_dolg = e.iddolg and e.iddepartment = 1
Псевдоним можно создавать не только для таблиц, но и для колонок.
SELSCT surname, d.dolgnost “Должность”
FROM dolgnosti d, employee e
WHERE d.id_dolg = e.iddolg and e.iddepartment = 1
С помощью WHERE-параметра пользователь определяет, какие блоки данных из приведенных в списке FROM таблиц появятся в результате запроса. За ключевым словом WHERE следует перечень условий поиска, определяющих те строки, которые должны быть выбраны при выполнении запроса.
Существует пять основных типов условий поиска (или предикатов):
Сравнение: сравниваются результаты вычисления одного выражения с результатами вычисления другого.
Диапазон: проверяется, попадает ли результат вычисления выражения в заданный диапазон значений.
Принадлежность множеству: проверяется, принадлежит ли результат вычислений выражения заданному множеству значений.
Соответствие шаблону: проверяется, отвечает ли некоторое строковое значение заданному шаблону.
Значение NULL: проверяется, содержит ли данный столбец определитель NULL (неизвестное значение).