Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Обзорные лекции БД / Обзорные_лекции_75.pps
Скачиваний:
13
Добавлен:
07.06.2015
Размер:
93.7 Кб
Скачать

75. Языки описания

запросов. Язык SQL

Языки описания запросов. Язык запросов SQL Структура языка запросов SQL. Язык определения данных DDL и язык манипулирования данными DML.

Использование SQL для выборки данных из таблицы. Оператор Select. Группировка и упорядочение данных. Итоговые функции в операторе Select. Пример применения оператора Select.

Операторы Insert Into, Delete From, Update. Примеры их использования.

Операторы Create Table, Alter Table. Примеры их использования

1

Языки описания запросов

Запрос представляет собой специальным образом описанное требование, определяющее состав производимых над БД операций по выборке, удалению или модификации хранимых данных. Для подготовки запросов с помощью различных СУБД чаще всего используются два основных языка описания запросов:

язык QBE (Query By Example) – язык запросов по образцу;

SQL (Structured Query Language) – структурированный язык запросов.

2

Язык запросов SQL

Язык SQL предназначен для выполнения операций над таблицами (создание, удаление, изменение структуры) и над данными таблиц (выборка, изменение, добавление и удаление данных). Он содержит также некоторые сопутствующие операции. SQL является непроцедурным языком и не содержит операторов управления, организации подпрограмм, ввода-вывода и т.п. Язык SQL не обладает функциями полноценного языка разработки, а ориентирован на доступ к данным, поэтому его включают в состав средств разработки программ.

Команды SQL можно разделить на пять категорий: команды DDL, команды DML, команды управления транзакцией, команды управления сеансом и встроенные команды SQL.

Язык определения данных (Data Definition Language – DDL). Язык манипулирования данными (Data Manipulation Language

– DML).

3

Команды SQL можно разделить на пять категорий: команды DDL, команды DML, команды управления транзакцией, команды управления сеансом и встроенные команды SQL.

Примеры команд языка SQL

Вид

Название

Назначение

 

 

CREATE TABLE

Создание таблицы

 

DDL

DROP TABLE

Удаление таблицы

 

ALTER TABLE

Изменение структуры

 

 

 

 

 

таблицы

 

 

SELECT

Выборка записей

 

 

UPDATE

Изменение записей

 

DML

INSERT

Вставка новых

 

 

 

записей

 

 

DELETE

Удаление записей

4

Команда выборки данных Select

SELECT [ALL | DISTINCT] [<псевдоним_таблицы>.]<выбираемый_элемент> [AS

<заголовок_столбца>]

[, [<псевдоним_таблицы>.]< выбираемый_элемент > [AS < заголовок_столбца >] ...]

FROM <источники данных> [WHERE <условие_фильтра>]

[GROUP BY <критерий_группировки>] [HAVING <фильтр>]

[ORDER BY <критерий_упорядочения>[ASC | DESC]

5

Итоговые функции в операторе Select

AVG(<выбираемый_элемент >) - среднее по колонке числовых данных. COUNT(<выбираемый_элемент >) - счетчик в колонке. COUNT(*) счетчик числа строк в выходе запроса.

MIN(<выбираемый_элемент >) - определяет наименьшее значение в колонке.

MAX(<выбираемый_элемент >) - определяет наибольшее значение в колонке.

SUM(<выбираемый_элемент >) - сумма по колонке числовых данных.

6

Пример применения оператора Select

Отобразить сведения о всех читателях, для каждого читателя указать количество посещений библиотеки. Записи упорядочить по убыванию в соответствии с количеством посещений.

SELECT "Issue"."idTicket" AS "билет", "Reader"."cSurname" AS "фамилия", "Reader"."cName" AS "имя", "Reader"."cPatr" AS "отчество", count(*) AS "посещений"

FROM "Reader" JOIN "Issue" ON "Reader"."idTicket" = "Issue"."idTicket" GROUP BY "Issue"."idTicket", "Reader"."cSurname", "Reader"."cName",

"Reader"."cPatr"

ORDER BY count(*) DESC;

7

Оператор Insert Into

INSERT INTO имя таблицы [( имя поля1 [, имя поля2 , ...])] VALUES ( выражение1 [, выражение2 , ...])

Добавляет в таблицу указанную запись.

Пример.

INSERT INTO ”Reader” (“idTicket”, “cSurname”) VALUES (2007, ‘Иванов’)

8

Оператор Delete From

Delete From имя таблицы [Where фильтр ]

Удаляет записи из таблицы.

Пример.

DELETE FROM “reader” Where “cSurname”='Петров'

9

Оператор Update

UPDATE [ имя БД !] имя таблицы ;

Set имя поля1 = выражение1 [, имя поля2 = выражение2

…]

Where фильтр ;

Обновляет записи в таблице (только для одной таблицы).

Пример.

UPDATE “reader” Set “idTicket”=“idTicket”+1000 Where “cSurname”='Петров‘

10

Соседние файлы в папке Обзорные лекции БД