You are on page 1of 15

(wydawnictwo groupas x).(x.nazwa, x.wydało.książka.

tytuł)

ID Operacja ENVS

Inicjalizujemy ENVS i QRES. ENVS


z binderami obiektów korzeniowych.
QRES pusty. książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind(”wydawnictwo”) książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

wykonanie operatora groupas,


zdjęcie z wartości z QRES,
utworzenie nowej sekcji na ENVS i
1 wrzucenie nowej wartości na QRES x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

wykonanie operatora , ewaluacja


2 lewego podzapytania

3 bind("x") x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

4 qres.pop(), pętla dla i23 i i28 x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

nested(i23) nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("nazwa") nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), dodajemy go do dotres,


usuwamy pierwszą sekcję z ENVS x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

kolejna iteracja kroku 4, nested(i28) nazwa(i31),budżet(i30),wydało(i29)


x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("nazwa") nazwa(i31),budżet(i30),wydało(i29)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), dodajemy go do dotres,


usuwamy pierwszą sekcję z ENVS x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

wykonanie operatora kropka, połóż


dotres na QRES x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)
wykonanie operatora , ewaluacja
prawego podzapytania x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

TUTAJ BŁAD: bag(i24, i31)


znajduje sie cały czas na QRES

bind("x") x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

5 qres.pop(), pętla dla i23 i i28 x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

nested(i23) nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("wydało") nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

6 qres.pop(), pętla dla i25 i 27 nazwa(i24),wydało(i25,i27),budżet(i26)


x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

nested(i25) książka(i1)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("książka") książka(i1)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

7 qres.pop(), pętla dla i1 książka(i1)


nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

nested(i1) oprawa(i2),tytuł(i3),rok_wydania(i4),autor(i5)
książka(i1)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("tytuł") oprawa(i2),tytuł(i3),rok_wydania(i4),autor(i5)
książka(i1)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), dodaj qres do dotres oprawa(i2),tytuł(i3),rok_wydania(i4),autor(i5)


książka(i1)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

usuwamy pierwszą sekcję z envs i


powracamy do pętli w kroku 7 książka(i1)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

usuwamy pierwszą sekcję z envs i


powracamy do pętli w kroku 6 nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

kontynujemy wykonanie petli,


nested(i27) książka(i6)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("książka") książka(i6)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), pętla dla i6 książka(i6)


nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

nested(i6) autor(i7,i8),rok_wydania(i9),tytul(i11)
książka(i6)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("tytuł") autor(i7,i8),rok_wydania(i9),tytul(i11)
książka(i6)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), dodaj qres do dotres autor(i7,i8),rok_wydania(i9),tytul(i11)


książka(i6)
nazwa(i24),wydało(i25,i27),budżet(i26)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

usuwamy 3 sekcje z envs i


powracamy do pętli w kroku 5 x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

kontynujemy pętlę dla i28,


nested(i28) wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)
bind("wydało") wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), pętla dla i29 wydało(i29),budżet(i30),nazwa(i31)


x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

nested(i29) książka(i12)
wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("książka") książka(i12)
wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), pętla dla i12 książka(i12)


wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

nested(i12) rok_wydania(i14),tytul(i15),autor(i16)
książka(i12)
wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

bind("tytuł") rok_wydania(i14),tytul(i15),autor(i16)
książka(i12)
wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

qres.pop(), dodaj qres do dotres rok_wydania(i14),tytul(i15),autor(i16)


książka(i12)
wydało(i29),budżet(i30),nazwa(i31)
x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

wykonanie operatora .,
przeniesienie dotresa na qres,
usuniecie 3 sekcji z envs x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

wykonanie operatora , x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

przypisanie qres.pop() do e2res x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

przypisanie qres.pop() do e1res x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)
dla każdego elementu e2res i e1res
utworz nową strukturę i dodaj ją do
eres x(wydawnictwo(i23), wydawnictwo(i28))
książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)

połóż eres na QRES x(wydawnictwo(i23), wydawnictwo(i28))


książka(i1,i16,12),autor(i18,i32),wydawnictwo(i23,i28)
wydało.książka.tytuł)

QRES Uwagi

bag(i23,i28)

binder(x, bag(i23,i28))

bag(i23,i28)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i24)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28)) dotres={i24}

bag(i31)

dotres={i24,i31}

bag(i24,i31)
bag(i24,i31)

bag(i23,i28)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i25,i27)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i1)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i3)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28)) dotres={i3)


binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i6)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i11)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28)) dotres={i3,i11)

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))
bag(i29)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i12)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

binder(x, bag(i23,i28))

bag(i15)
binder(x, bag(i23,i28))

binder(x, bag(i23,i28)) dotres={i3,i11,i15)

bag(i3,i11,i15)
binder(x, bag(i23,i28))

bag(i3,i11,i15)
bag(i24,i31)
binder(x, bag(i23,i28))

bag(i24,i31) e2res={i3,i11,i15}
binder(x, bag(i23,i28))

binder(x, bag(i23,i28)) e1res={i24,i31}


binder(x, bag(i23,i28)) eres = { struct{i3,i24}, struct{i3,i31}, struct{i11,i24}, struct{i11,i31}, struct{i15

bag( struct{i3,i24}, struct{i3,i31}, struct{i11,i24}, struct{i11,i31}, struct{i15,i24}, struct{i15,i31} )


binder(x, bag(i23,i28))
uct{i11,i24}, struct{i11,i31}, struct{i15,i24}, struct{i15,i31} }

You might also like