Операция деления реляционной алгебры. Определение операции деления с помощью основных операций
Алгебра: R[A Атрибуты А и В должны быть совместимыми. Для упрощения считаем отношение бинарным, состоящим из 2 состояний: R=A u неА, А/\неА=0. Для каждого уникального r[неA] необходимо выполнить следующее действие: выбрать допустимые строки из отношения R и обозначим как Т=gk(r[неA]. В результирующее отношение будут входить такие кортежи, для которых выполняется условие: S[B] c Т. Пример: P(D1,D2,D3)
Q(D4,D5)
P[D3
P=
P[неD3] P[D3]
Q[D4]=
Q[Dn] c Т T=gn(P[неD3]) P[D3 P[P2,P3],P[D3 D2 P=11 P[D3 Пусть dr, ds обозначают степень отношения R,S. Результат деления отношения R на S есть множество кортежей р степени (dr - ds), таких что для всех кортежей seS, степени ds кортеж (рхs) не принадлежит R. Используя обозначение, используемое ранее в отношении, считаем отношение R проекцией на первые из (dr - ds) кортежей. А (рхs)–R соответствует r, которое не принадлежит R, получена конкатенация 2 отношений р и s. Пусть V–множество кортежей степени (dr - ds) полученной на (рхs)–R. Результатом деления R[A Q[D4]= ds =1 dr-ds=2-1=1 Пусть имеется исходное отношение P[D2,D3], P[D3 D2,D3 Р= р= L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAsMaT2sQA AADcAAAADwAAAGRycy9kb3ducmV2LnhtbESPzWrDMBCE74G+g9hAb4mcpDStYyWU0EJ6rJPcF2tj G1srI6n+ydNXhUKPw8x8w2SH0bSiJ+drywpWywQEcWF1zaWCy/lj8QLCB2SNrWVSMJGHw/5hlmGq 7cBf1OehFBHCPkUFVQhdKqUvKjLol7Yjjt7NOoMhSldK7XCIcNPKdZI8S4M1x4UKOzpWVDT5t1FQ Hj/Pr807Dd39Pk2bq3vq3ckq9Tgf33YgAo3hP/zXPmkF680Wfs/EIyD3PwAAAP//AwBQSwECLQAU AAYACAAAACEA8PeKu/0AAADiAQAAEwAAAAAAAAAAAAAAAAAAAAAAW0NvbnRlbnRfVHlwZXNdLnht bFBLAQItABQABgAIAAAAIQAx3V9h0gAAAI8BAAALAAAAAAAAAAAAAAAAAC4BAABfcmVscy8ucmVs c1BLAQItABQABgAIAAAAIQAzLwWeQQAAADkAAAAQAAAAAAAAAAAAAAAAACkCAABkcnMvc2hhcGV4 bWwueG1sUEsBAi0AFAAGAAgAAAAhALDGk9rEAAAA3AAAAA8AAAAAAAAAAAAAAAAAmAIAAGRycy9k b3ducmV2LnhtbFBLBQYAAAAABAAEAPUAAACJAwAAAAA= " fillcolor="black [3213]" strokecolor="#f79646 [3209]" strokeweight="2pt">
![]() ![]() ![]() ![]() ![]() (dr - ds)=1 P[D3
|