Главная » Microsoft SQL Server, Базы данных » Объединение данных о

0

|p"Y) о введении к этой книге я говорил, что хочу разделить I)ss?r с вами радость разработки приложений для SQL Server. В этой главе вы поймете, что я имел в виду. Заставьте данные группироваться нужным образом, получите ответ на свой вопрос с помощью оригинального запроса, замените сотни строк программы, написанной на традиционном языке программирования, одним пакетным запросом SQL— это действительно принесет вам радость, и обо всем этом мы поговорим в данной главе.

Реляционные базы данных по своей природе сегментируют данные в несколько узких, но достаточно длинных таблиц. Очень редко бывает, когда данные одной таблицы могут обеспечить пользователя смысловой информацией. Таким образом, объединение данных из множества таблиц является одной из основных задач программиста SQL. Теория, стоящая за объединением данных, называется реляционной алгеброй и была создана в 1970 году Эдгаром Коддом.

Реляционная алгебра содержит восемь реляционных операторов.

?               Ограничение. Возвращает строки, удовлетворяющие заданному критерию.

?               Проекция. Возвращает выбранные столбцы или вычисленные значения из набора данных.

?               Произведение. Реляционное произведение возвращает все возможные комбинации данных из двух наборов.

?               Слияние. Реляционное сложение и вычитание объединяют две таблицы по вертикали, располагая одну над другой и состыковывая столбцы.

?               Пересечение. Возвращает строки, общие для двух таблиц.

?               Разность. Возвращает строки, уникальные для некоторого набора данных.

?               Объединение. Слияние двух таблиц по горизонтали на основе совпадения данных в определенных столбцах.

?               Деление. Операция, обратная реляционному произведению. Возвращает строки одного множества данных, которые соответствуют всем строкам сопоставляемого набора данных.

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

?               Подзапросы. Аналогичны объединениям, но при этом более гибкие. Результат подзапроса используется вместо выражения, списка или набора данных во внешнем запросе.

На формальном языке реляционной алгебры:

?               таблица, или набор данных, называется ссылкой или сущностью;

?               строка называется кортежем;

?               столбец называется атрибутом.

Именно эти термины мы будем использовать на протяжении всей главы.

Реляционная теория — это не панацея. За годы существования этой теории разработчики баз данных расширили ее и дополнили более строгими определениями, а теоретики более четко очертили круг задач для представления объектов и отношений реального мира с помощью структур данных. Однако оригинальная работа Эдгара Кодда все равно осталась фундаментом теории проектрования и реализации баз данных.

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

Эта глава полностью основана на работах Э.Ф. Кодда и С. Дж. Дейта. Полный На заметку список рекомендованных первоисточников вы найдете на странице Books сайта

www.SQLServerBible.com.

Источник: Нильсен, Пол. Microsoft SQL Server 2005. Библия пользователя. : Пер. с англ. — М. : ООО “И.Д. Вильямс”, 2008. — 1232 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии