Выборка (сокращенное название операции - ???? ? (тета) - выборка):
S WHERE X?Y, где ? ={<, ?, =, ?, ?,>}.
? - выборкой из отношения S по атрибутам X и Y называется отношение, имеющее тот же заголовок, что и отношение S, и тело, содержащее множество всех кортежей отношения S таких, для которых проверка условия «X?Y» дает значение «истина». Ясно,что атрибуты X и Y должны быть определены на одном и том же домене, а операция на этом домене должна иметь смысл.
На практике эта операция используется, как правило, в модификации, когда вместо X или Y указано скалярное значение, чаще всего в форме
S WHERE X?C, где C - литеральная константа.
В результате выполнения этого оператора получается «горизонтальное» подмножество исходного отношения.
Проекция. Проекцией отношения S по атрибутам X1, X2, …, Xn и обозначаемой как
S[X1, X2, …, Xn],
называется отношение с заголовком {X1, X2, …, Xn}и телом, содержащим множество всех кортежей {X1:x1, X2:x2, …, Xn:xn} таких, для которых в отношении S значение атрибута X1 равно x1, атрибута X2 равно x2, …, атрибута Xn равно xn.
. Некорректное применение операции проекции может привести к потере информации; для нашего примера такая ситуация могла бы возникнуть, если в отношении S хранились бы сведения о двух разных поставщиках с одинаковой фамилией.
3. Естественное (экви) соединение. Пусть отношения S и P имеют заголовки{X1, X2, …, Xm, Y1, Y2, … , Yn} и {Y1, Y2,… , Yn, Z1, Z2, … , Zp, соответственно, причем атрибуты {Y1, Y2, … , Yn}по именам и доменам в обоих отношениях совпадают.
Рассмотрим три совокупности {X1, X2, …, Xm}, {Y1, Y2, … , Yn} и { Z1, Z2, … , Zp} как три составных атрибута {X}, {Y} и {Z}. Тогда естественным соединением отношений S и P
S JOIN P
называется отношение с заголовком {X, Y, Z} и телом, содержащим множество всех кортежей {X:x, Y:y, Z:z} таких, для которых в отношении S значение атрибута X равно x, атрибута Y равно y, а в отношении P значение атрибута Y равно y, а атрибута Z равно z.
Замечание. При отсутствии общих атрибутов у исходных отношений S и P естественное соединение эквивалентно декартовому произведению.
. ?-соединение (условное соединение). Это операция соединения двух отношений на основе некоторых условий, отличных от эквивалентности.
Пусть отношения S и P не имеют общих имен атрибутов и условие ? определяется аналогично операции выборки. Тогда ?-соединением отношения S по атрибуту X с отношением P по атрибуту Y называется результат вычисления выражения
(S TIMES P) WHERE X?Y,
то есть, результирующее отношение строится путем выполнения операции выборки по условию для декартова произведения исходных отношений.
Очевидно, что атрибуты X и Y должны быть определены на одном и том же домене и операция ? должна иметь на этом домене смысл.
5. Деление. Пусть заголовки отношений S (делимое) и P (делитель) имеют вид{X1, X2, …, Xm, Y1, Y2, … , Yn}и {Y1, Y2, … , Yn},соответственно, причем атрибуты {Y1, Y2, … , Yn}в обоих отношениях представлены одинаковыми именами и определены на одних и тех же доменах. Будем рассматривать выражения{X1, X2, …, Xm} и {Y1, Y2, … , Yn}как два составных атрибута {X} и {Y}. Тогда результатом деления отношения S на отношение P, обозначаемое как
S DEVIDEBY P,
называется отношение с заголовком {X} и телом, содержащим множество всех кортежей{X:x} таких, что для каждого xЄX существует множество кортежей {X:x, Y:y} отношения S таких, у которых множество составляющих {Y:y} включает все кортежи {Y:y} отношения P. Или нестрого: результат содержит такие X-значения из отношения S, для которых соответствующие Y-значения включают все Y-значения из отношения P.