äÁ×ÁÊ ÐÏ ÔÅÍÅ ÐÒÅÄÌÏÖÅÎÉÑ ÐÅÒÅÐÉÒÁÔÓÑ ÍÏÖÎÏ ÄÏÌÇÏ É ÎÕÄÎÏ É ÎÁ ÓÏÚÉÄÁÅÅ 
×ÒÅÍÅÎÉ ÎÅ ÏÓÔÁÎÅÔÓÑ.

1.åÓÌÉ ÂÙ ÎÅ ÂÙÌÏ ÔÁËÉÈ ÔÏÒÍÁÚÏ× Ñ ÔÏÇÄÁ ÂÙ ÎÅ ÄÅÌÁÌ × ÔÁÂÌÉÃÁÈ 
ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÄÕÂÌÉÒÕÀÝÉÅ ÐÏÌÑ ÄÌÑ ÕÓËÏÒÅÎÉÑ ÚÁÐÒÏÓÏ×.
îÅ ÕÄÁÞÎÙÊ ÐÒÉÍÅÒ É ÔÅËÓÔ.

ÐÒÏÂÕÅÍ ÅÝÅ ÒÁÚ

select * from t1, t2, ts where
ts.fs = :P1 and
ts.prod = t1.prod and
t1.pok = :pok and
t1.id = t2.t1id and t2.kolvo > 0

ÒÁÂÏÔÁÅÔ ÄÏÌØÛÅ ÞÅÍ ÅÓÌÉ ÐÏÌÑ prod, pok ÂÕÄÕÔ ÐÒÏÄÕÂÌÉÒÏ×ÁÎÙ × t2 ÔÏ ÅÓÔØ 
ÚÁÐÒÏÓ ÂÕÄÕÔ ×ÙÇÌÑÄÅÔØ ÔÁË

select * from t2, ts where
ts.fs = :P1 and
ts.prod = t2.prod and
t2.pok = :pok and t2.kolvo > 0

ÔÅÐÅÒØ ÅÓÔÅÓÔ×ÅÎÎÏ Ñ ÓÏÚÄÁÀ ÉÎÔÅËÓ × t2 = prod, pok, kolvo É ÚÁÐÒÏÓÙ ÓÔÁÌÉ 
ÌÅÔÁÔØ ÎÁ ÐÏÒÑÄÏË
Á ÔÅÐÅÒØ ÍÙ ÐÏÌÕÞÁÅÍ ÄÕÂÌÑÖ ÄÁÎÎÙÈ × ÔÁÂÌÉÃÅ É × ÉÎÄÅËÓÁÈ. ðÏÓÌÅ ÄÏÌÇÉÈ 
ÒÁÚÄÕÍÉÊ ÐÏÒÁÚÉÌÁ ÍÙÓÌÑ ÞÔÏ ÉÎÄÅËÓÙ ÖÅ ÕÖÅ ÈÒÁÎÑÔ ÚÎÁÞÅÎÉÑ ÄÌÑ ÔÁÂÌÉÃÙ T2 ÉÚ 
T1.

îÕ ÎÁËÏÅà ÔÅÐÅÒØ ÍÙÓØ ËÏÔÏÒÕÀ Ñ ÐÙÔÁÀÓØ ÄÏ×ÅÓÔÉ ÄÏ ×ÁÓ. åÓÌÉ ÓÄÅÌÁÔØ 
×ÏÚÍÏÖÎÙÍ ÏÔÓÕÔÓÔ×ÉÅ ÆÉÚÉÞÅÓËÏÇÏ ÐÒÉÓÕÔÓÔ×ÉÑ ÐÏÌÅÊ prod, pok × t2 Ó ÐÏÍÏÝØÀ 
ÔÁËÏÇÏ ÈÉÔÒÏÇÏ ÉÎÄÅËÓÁ
CREATE INDEX idx2 ON T2 (
(select prod from T1 where  t1.id = t2.t1id) [as prod],
(select pok from T1 where  t1.id = t2.t1id) [as pok],
kolvo)

Á ÚÎÁÞÉÔ ÐÏÌÅÊ prod, pok × t2 ÎÅ ÂÕÄÕÔ É ÍÅÓÔÏ ÏÎÉ ÂÕÄÕÔ ÚÁÎÉÍÁÔØ ÔÏÌØËÏ × 
ÉÎÄÅËÓÁÈ ËÁË É ÐÏÌÏÖÅÎÏ.

á ÚÎÁÞÉÔ × ÚÁÐÒÏÓÅ
select * from t1, t2, ts where
ts.fs = :P1 and
ts.prod = t1.prod and
t1.pok = :pok and
t1.id = t2.t1id and t2.kolvo > 0

ÍÏÖÅÔ ÓÐÏËÏÊÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÉÎÄÅËÓ idx2 ÄÌÑ ÐÌÁÎÁ

ÐÏÞÕÍÕ Ñ ÚÁÔÒÏÎÕÌ ÔÅÍÕ ÔÒÉÇÇÅÒÁ ÄÁ ÐÏ ÔÏÊ ÐÒÉÞÉÎÅ ÅÓÌÉ ÅÓÔØ ÏÐÉÓÁÎÉÅ
CREATE INDEX idx2 ON T2 (
(select prod from T1 where  t1.id = t2.t1id) [as prod],
(select pok from T1 where  t1.id = t2.t1id) [as pok],
kolvo)
ÔÏ × ÔÁÂÌÉÃÅ T1 ÄÏÌÖÅÎ ÂÙÔØ ÔÒÉÇÇÅÒ ÎÁ Á×ÔÏ ÏÂÎÏ×ÌÅÎÉÅ T2 ÐÏ t1.id = t2.t1id 
Ô.Ë. ÄÁÎÎÙÅ × ÉÎÄÅËÓÅ ÎÁÄÏ ÏÂÎÏ×ÉÔØ ÅÓÌÉ ÐÏÌÑ prod, pok × t1 ÉÚÍÅÎÉÌÉÓØ Á ÍÙ 
ÉÈ ÉÓÐÏÌØÚÕÅÍ ÄÌÑ ÉÎÄÅËÓÁ

ÐÏÓÕÔÉ ÄÅÌÁ ÔÁËÉÍ ÏÂÒÁÚÏÍ ÍÏÖÎÏ ÂÙÌÏ ÂÙ ÎÁÐÉÓÁÔØ ÓÌÏÖÎÙÊ ÉÎÄÅËÓ
CREATE INDEX idx2x ON Tx (
(select T1.prod from T1, t2 where  t1.id = t2.t1id and t2.id = tx.t2id) [as 
prod],
(select T1.prod_sk from T1, t2 where  t1.id = t2.t1id and t2.id = tx.t2id) 
[as prod_sk],
(select T1.pok from T1, t2 where  t1.id = t2.t1id and t2.id = tx.t2id) [as 
pok],
(select T2.kolvo from T2 where  t2.id = tx.t2id) [as kolvo] ....)
ÄÌÑ ÂÏÌÅÅ ÓÌÏÖÎÙÈ ÚÁÐÒÏÓÏ× É ÚÁÐÒÏÓÙ ÂÕÄÕÔ ÌÅÔÁÔØ ÅÓÔÅÓÔ×ÅÎÎÏ ÌÏÑ ÒÁÚÎÙÈ 
ÓÉÔÕÁÃÉÊ ÂÕÄÕÔ Ó×ÏÉ ÉÎÄÅËÓÙ ÎÏ ÚÁÔÏ ÜËÏÎÏÍÉÔÓÑ ÍÅÓÔÏ × ÐÁÍÑÔÉ É × ÏÄÎÕ 
ÓÔÒÁÎÉÃÕ ×ÌÁÚÉÔ ÂÏÌØÛÅ ÄÁÎÎÙÈ.

õ ÍÏÅÇÏ ÄÒÕÇÁ ÒÁÎØÛÅ ÚÁÐÒÏÓÙ ÔÏÒÍÁÚÉÌÉ Ñ ÐÒÉÛÅÌ Ë ÎÅÍÕ Õ ÎÅÇÏ ËÕÞÁ Ó×ÑÚÅÊ 
ËÉÎÕÌ ÉÄÅÀ ËÁË Ñ ÕÌÕÞÛÁÀ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ ÏÎ ÓÄÅÌÁÌ Ó×ÏÄÎÕÀ ÔÁÂÌÉÃÕ É 
ÔÅÐÅÒØ ÕÎÅÇÏ ×ÓÅ ÌÅÔÁÅÔ ÎÏ ÍÅÓÔÁ ÚÁÎÉÍÁÅÔ ÜÔÁ ËÏÎÓÔÒÕËÃÉÑ ÍÁÍÁ ÄÏÒÏÇÁÑ ÍÎÅ 
ÓÔÒÁÛÎÏ ÓÍÏÔÒÅÔØ × ÔÁÂÌÉÃÅ ÐÏÌÅÊ ÔØÍÁ ÔØÍÕÝÁÑ.

îÁÓËÏÌØËÏ Ñ ÐÏÎÉÍÁÀ ÓÎÁÞÁÌÁ ÐÏÉÓË ÐÒÏÉÈÏÄÉÔ ÐÏ ÐÏÄÈÏÄÑÝÉÍ ÉÎÄÅËÓÁÍ Á ÐÏÔÏÍ 
ÐÒÏÂÅÇÁÑ ÐÏ ÜÔÉÍ ÉÎÄÅËÓÁÍ ÍÙ ÐÏÌÕÞÁÅÍ ÓÔÒÏËÉ ÄÁÎÎÙÈ É ÕÖÅ ÆÉÌØÔÒÕÅÍ ÐÏ 
ÎÅÄÏÓÔÁÀÝÉÍ × ÉÎÄÅËÓÁÈ ÄÁÎÎÙÍ É ÐÏÌÕÞÁÅÍ ÒÅÚÕÌØÔÁÔ. õ ÍÅÎÑ Ë ÐÒÉÍÅÒÕ 
ÄÕÂÌÉÒÕÀÔÓÑ ÍÁËÓÉÍÕÍ 7 ÐÏÌÅÊ × ÏÄÎÏÊ ÔÁÂÌÉÃÅ × ÄÒÕÈÉÈ ÍÅÎØÛÅ É ÔÏÌØËÏ ÒÁÄÉ 
ÓÏÚÄÁÎÉÑ ÉÎÄÅËÓÏ× ÞÔÏÂÙ ÚÁÐÒÏÓÙ ÛÅ×ÅÌÉÌÉÓØ. èÏÔÑ ÐÏÓÕÔÉ ÍÏÖÎÏÂÙÌÏÂÙ É 
ÚÁ×ÅÒÎÕÔØ ÐÏÓÌÏÖÎÅÊ ÎÏ ÎÁÄÁÎÎÙÊ ÍÏÍÅÎÔ ÍÅÎÑ ÐÕÇÁÅÔ ÒÏÓÔ ÂÁÚ ÄÁÎÎÙÈ ÚÁ ÐÏÌ 
ÇÏÄÁ 400 ÍÂ. ñ ÏÓÏÚÎÁÀ ÞÔÏ 30% ÄÕÂÌÉÒÕÅÔÓÑ ÄÁÎÎÙÍÉ ÎÁ ÞÁÓÔØ ÄÕÂÌÉÒÕÅÍÙÈ 
ÐÏÌÅÊ ÐÒÉÈÏÄÉÔÓÑ ÄÅÌÁÔØ FK ÄÁÂÙ ÓÌÕÞÁÊÎÏ ÔÁÍ ÎÅ ÏËÁÚÁÌÉÓØ ÎÅ ÔÅ ÄÁÎÎÙÅ. 
ðÏÌÕÞÁÅÔÓÑ ÐÌÀÓÏÍ ÅÝÅ ÏÔ 5% ÄÏ 20% ÎÁÆÉÇ ÎÅÎÕÖÎÙÅ FK ÉÎÄÅËÓÙ. 



Ответить