Понятие отношения является очень важным
Определение 7
. Мощность множества кортежей, входящих в отношение
мощностью отношения
Замечание. Понятие отношения является очень важным не только с математической точки зрения. Понятие отношения фактически лежит в основе всей реляционной теории баз данных. Как будет показано ниже, отношения являются математическим аналогом
таблиц. Сам термин "реляционное представление данных", впервые введенный Коддом [43], происходит от термина relation, понимаемом именно в смысле этого определения.
Т.к. любое множество можно рассматривать как декартовое произведение степени 1, то любое подмножество, как и любое множество, можно считать отношением степени 1. Это не очень интересный пример, свидетельствующий лишь о том, что термины "отношение степени 1" и "подмножество" являются синонимами. Нетривиальность понятия отношения проявляется, когда степень отношения больше 1. Ключевыми здесь являются два момента:
Во-первых, все элементы отношения есть однотипные кортежи. Однотипность кортежей позволяет считать их аналогами строк в простой таблице, т.е. в такой таблице, в которой все строки состоят из одинакового числа ячеек и в соответствующих ячейках содержатся одинаковые типы данных. Например, отношение, состоящее из трех следующих кортежей {(1, "Иванов", 1000), (2, "Петров", 2000), (3, "Сидоров", 3000)} можно считать таблицей, содержащей данные о сотрудниках и их зарплатах. Такая таблица будет иметь три строки и три колонки, причем в каждой колонке содержатся данные одного типа.
В противоположность этому рассмотрим множество {(1), (1, 2), (1, 2, 3)}, состоящее из разнотипных числовых кортежей. Это множество не является отношением ни в
![](images/image_37.gif)
![Определение 7](images/image_38.gif)
, ни в
![](images/image_39.gif)
![Определение 7](images/image_40.gif)
, но такая трактовка ничего нового, по сравнению с понятием подмножества, не дает.
Во-вторых. За исключением крайнего случая, когда отношение есть само декартово произведение
![](images/image_41.gif)
Действительно, каждому отношению можно поставить в соответствие некоторое логическое выражение
![](images/image_42.gif)
![Определение 7](images/image_43.gif)
принадлежать отношению
предикатом отношения ![](images/image_45.gif)
![Определение 7](images/image_46.gif)
принадлежит отношению
![](images/image_47.gif)
![Определение 7](images/image_48.gif)
принимает значение "истина". В свою очередь, каждый n-местный предикат задает некоторое n-арное отношение. Таким образом, существует взаимно однозначное соответствие между n-арными отношениями и n-местными предикатами.
Если это не вызывает путаницы, удобно и отношение, и его предикат обозначать одной и той же буквой. Например, отношение
![](images/image_49.gif)
![Определение 7](images/image_50.gif)
.
Содержание раздела