
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Таблица A
- •Таблица A
- •Таблица A
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Элементы языка SQL
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Физическое проектирование БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •Технологии построения информационных систем – приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
- •: Проектирование приложений БД
Элементы языка SQL
Оператор SELECT
Использование IS NULL
Если требуется выдать записи, в которых некоторый столбец (или результат вычисления выражений) имеет значение NULL, то в условии достаточно указать предложение:
<значение> IS [NOT] NULL
Пример.
Показать все факты отгрузки товаров со склада, для которых не указан покупатель.
SELECT * FROM RASHOD
WHERE POKUP IS NULL

Элементы языка SQL
Оператор SELECT
Использование операции сцепления строк
Операция || соединяет два строковых значения , которые могут быть представлены выражениями:
<строковое_выражение1> || <строковое_выражение2>
Операцию можно использовать как после слова SELECT, так и в предложении WHERE
Пример.
Показать в одном столбце имена покупателей и названия их городов:
SELECT POKUP || ‘ (‘ || GOROD || ‘)’ FROM POKUPATELI
COLUMN1
ООО «Альфа» (Москва) ЗАО «Продторг» (Самара)
….. …..
Элементы языка SQL
Оператор INSERT
Формат оператора добавления записей
INSERT INTO <Объект> [ (столбец1 [ , столбец2 …]) ]
{VALUES ( <значение1> [,<значение2> …]) | <оператор SELECT>}
Список столбцов указывает столбцы, которым будут присвоены значения в добавляемых записях. Список столбцов может быть опущен. В этом случае подразумеваются все столбцы объекта.
Поставить в соответствие столбцам списки значений можно двумя способами
-Явное указание значений после слова VALUES
-Формирование значений при помощи оператора SELECT.
Элементы языка SQL
Оператор INSERT
Формат оператора добавления записей
INSERT INTO <Объект> [ (столбец1 [ , столбец2 …]) ]
{VALUES ( <значение1> [,<значение2> …]) | <оператор SELECT>}
Список столбцов указывает столбцы, которым будут присвоены значения в добавляемых записях. Список столбцов может быть опущен. В этом случае подразумеваются все столбцы объекта.
Поставить в соответствие столбцам списки значений можно двумя способами
-Явное указание значений после слова VALUES
-Формирование значений при помощи оператора SELECT.
Элементы языка SQL
Оператор INSERT
Явное указание списка значений
INSERT INTO <Объект> [ (столбец1 [ , столбец2 …]) ] VALUES ( <значение1> [,<значение2> …])
Пример.
INSERT INTO RASHOD (N_RASH, DAT_RASH, KOLVO, TOVAR, POKUP) VALUES (45 ,”20.01.2005”, 100, “Сахар”, “Саяны”)
Или, если столбцы указаны в полном составе и порядке создания:
INSERT INTO RASHOD
VALUES (45 ,”20.01.2005”, 100, “Сахар”, “Саяны”)
Элементы языка SQL
Оператор UPDATE
Формат оператора изменения записей
UPDATE <Объект>
SET столбец1 = <значение1> [ , столбец2 = <значение 2> …] [WHERE <условие_поиска> ]
Пример.
UPDATE RASHOD
SET DAT_RASH = “24.01.2005”, KOLVO=KOLVO+2 WHERE DAT_RASH = “20.01.2005”
Элементы языка SQL
Оператор DELETE
Формат оператора удаления записей
DELETE FROM <Объект> [WHERE <условие_поиска> ]
Пример.
DELETE FROM RASHOD
WHERE (DAT_RASH = “20.01.2005”) AND (TOVAR = “Сахар”)
Элементы языка SQL
Работа с просмотрами (VIEW)
Понятие просмотра как виртуальной таблицы
Формирование записей в просмотре определяется оператором SELECT. Для создания просмотра применяется оператор:
CREATE VIEW ИмяПросмотра [ (столбец_view [, столбец_view1 … ] ) ] AS < оператор_select > [WITH CHECK OPTION]
Необязательный параметр WITH CHECK OPTION определяет, допускать ли для обновляемых просмотров ввод записей, не удовлетворяющих условию формирования просмотра.
Пример:
CREATE VIEW FULL_RASHOD AS
SELECT R.DAT_RASH, R.TOVAR, R.KOLVO, T.ZENA WHERE R.TOVAR = T.TOVAR
После этого к нему можно обращаться как к обычной таблице БД:
SELECT * FULL_RASHOD
Элементы языка SQL
Работа с просмотрами (VIEW)
Способы формирования просмотра
Просмотр может создаваться как:
1) вертикальный срез таблицы, когда в просмотр включается подмножество столбцов таблицы, например:
CREATE VIEW RASH_VERT AS
SELECT DAT_RASH, TOVAR, KOLVO FROM RASHOD
2) горизонтальный срез таблицы, когда в просмотр включаются все столбце, но не все записи, например:
CREATE VIEW RASH_GORIZ AS
SELECT * FROM RASHOD WHERE TOVAR = “Сахар”
3)вертикально-горизонтальный срез таблицы:
CREATE VIEW RASH_VERT_GORIZ AS
SELECT DAT_RASH, TOVAR, KOLVO FROM RASHOD WHERE TOVAR = “Сахар”
4)подмножество строк и столбцов соединения разных таблиц:
CREATE VIEW FULL_RASHOD AS
SELECT R.DAT_RASH, R.TOVAR, R.KOLVO, T.ZENA
FROM RASHOD R, TOVARY T
WHERE R.TOVAR = T.TOVAR
Элементы языка SQL
Работа с просмотрами (VIEW)
Обновляемые и необновляемые просмотры
Чтобы просмотру можно было применять операторы UPDATE, DELETE необходимо одновременное выполнение двух условий:
1.Просмотр должен формироваться из записей только одной таблицы;
2.Оператор SELECT просмотра не должен использовать агрегатных функций, режима DISTINCT, предложения HAVING, соединения таблиц, хранимых процедур и функций, определённых пользователем.
Чтобы в просмотр можно было добавлять записи оператором INSERT необходимо одновременное выполнение трёх условий:
1.В просмотр должен быть включен каждый столбец таблицы, имеющий атрибут NOT NULL ;
2.Просмотр должен формироваться из записей только одной таблицы;
3.Оператор SELECT просмотра не должен использовать агрегатных функций, режима DISTINCT, предложения HAVING, соединения таблиц, хранимых процедур и функций, определённых пользователем.