Открытая коллекция знаний

OpenU.Ru

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

Общие сведения о языке запросов SQL

Рост количества данных, необходимость их хранить и обрабатывать привели к тому, что возникла потребность в создании стандартного языка запросов к базам данных, который мог бы функционировать в большом количестве различных видов компьютерных систем. Действительно, такой стандартный язык позволяет пользователям манипулировать данными независимо от того, работают ли они на персональном компьютере, сетевой рабочей станции, или на универсальной ЭВМ.

SQL (Structured Query Language) – это сокращенное название структурированного языка запросов, предоставляющего средства создания и обработки данных в реляционных базах. Независимость от специфики компьютерных технологий, а также поддержка SQL лидерами промышленности в области технологии реляционных баз данных сделали его основным стандартным языком запросов.

Реализация в SQL концепции операций, ориентированных на табличное представление данных, позволила создать компактный язык с небольшим набором предложений. SQL может использоваться как для выполнения запросов, так и для построения прикладных программ.

В языке SQL существуют:

  • предложения определения данных – определение базы данных а также определение и уничтожение таблиц и индексов;
  • запросы на выбор данных – предложение SELECT;
  • предложения модификации данных – добавление, удаление и изменение данных;
  • предложения управления данными – предоставление и отмена привилегий на доступ к данным, управление транзакциями и другие.

SQL предоставляет возможность выполнять

  • арифметические вычисления, включая разнообразные функциональные преобразования, обработку текстовых строк и выполнение операций сравнения значений арифметических выражений и текстов;
  • упорядочение строк или столбцов при выводе содержимого таблиц на печать или экран дисплея;
  • создание представлений, позволяющих пользователям интерпретировать данные без увеличения их объема в БД;
  • сохранение выводимого по запросу содержимого таблицы, нескольких таблиц или представления в другой таблице;
  • группирование данных и применение к этим группам таких операций, как среднее, сумма, максимум, минимум, число элементов и т.п.

Реляционная база данных – это связанная информация, сохраняемая в двумерных таблицах со строками и столбцами. Строки обычно называются записями, столбцы ­ полями.

В настоящей разработке будут рассмотрены вопросы, связанные с командами языка SQL, позволяющими производить выборку информации из базы данных, изменение информации в таблицах базы данных, но не в их структуре. Эта группа команд языка SQL называется DMLData Manipulation Language (язык обработки данных).

Для изложения материала в качестве примера будем использовать небольшую реляционную базу данных, отражающую работу оптового склада. База данных состоит из 5 таблиц.

В таблице ТОВАРЫ (Goods), содержится 4 поля, с информацией о товаре:

GNum – номер товара;
GName – наименование товара;
GTypeNum – номер категории товара, к которой он принадлежит;
GPrice – цена товара

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

Goods
GNum Gname GTypeNum GPrice
1 Сахар 1 12
2 Мука 1 9
3 Мыло 3 5
4 Пиво 2 9
5 Фен «Philips» 4 130
6 Печенье 1 15
7 Консервы 1 17
8 Вино 2 35

Таблица КАТЕГОРИЯ ТОВАРА (GoodsTypes) содержит 2 поля:

GTNum – номер категории;
GTName – наименование категории;

GoodsTypes
GTNum GTName
1 Продовольственные
2 Алкогольные
3 Хозтовары
4 Бытовая техника

В таблице ПОКУПАТЕЛИ (Buyers), содержится 3 поля, с информацией о покупателе:

BNum – номер покупателя;
BName – наименование фирмы;
BTown – номер города, в котором зарегистрирована фирма;

Buyers
BNum BName BTown
1 Дельта 1
2 Золотой колос
3 Дельфин 2
4 Элита 2
5 Москва 3

В таблице ГОРОДА (Towns), содержится 2 поля, с информацией о городах:

TNum – номер города;
TName – наименование города;

Towns
TNum TName
1 Махачкала
2 Новосибирск
3 Москва

 

В таблице ПРОДАЖ (Sells), содержится 6 полей, с информацией о продаже товаров:

SNum – номер сделки (продажи) товара;
GNum – номер проданного товара;
BNum – номер покупателя;
SDate – дата продажи товара;
SQnty – количество проданного товара;
SSum – сумма на которую продан товар.

Sells
SNum GNum BNum SDate SQnty SSum
1 2 5 20.01.01 50 6700
20 5 2 05.05.01 100 60000
5 1 2 320 192000
7 2 3 05.05.01 230 1000
15 3 1 16.08.01 89 100000

Содержание