DELETE FROM pricebot_data;
SELECT INTO base_firm_ firm_id FROM hlp_pricebot_firm_base;
INSERT INTO pricebot_data (tid) SELECT DISTINCT tid FROM price_ready2load ;
UPDATE pricebot_data SET basefirm_yesno=1 WHERE tid IN (SELECT tid FROM price_ready2load WHERE firm=base_firm_);
FOR rec_list IN SELECT * FROM pricebot_data LOOP
SELECT INTO avg_vhod_ AVG(price) FROM price_list WHERE price_col=5 AND tid=rec_list.tid AND firm IN (SELECT firm_id FROM hlp_pricebot_firm_use_vhod) GROUP BY tid; -- avg min
SELECT INTO base_vhod_ price FROM price_list WHERE price_col=5 AND tid=rec_list.tid AND firm=base_firm_; -- avg min
SELECT INTO max_vhod_ MAX(price) FROM price_list WHERE price_col=5 AND tid=rec_list.tid AND firm IN (SELECT firm_id FROM hlp_pricebot_firm_use_vhod) GROUP BY tid; -- max min
SELECT INTO min_vhod_ MIN(price) FROM price_list WHERE price_col=5 AND tid=rec_list.tid AND firm IN (SELECT firm_id FROM hlp_pricebot_firm_use_vhod) GROUP BY tid; -- min min
SELECT INTO base1_ price FROM price_list WHERE price_col=1 AND tid=rec_list.tid AND firm=base_firm_; -- avg min
SELECT INTO base2_ price FROM price_list WHERE price_col=2 AND tid=rec_list.tid AND firm=base_firm_; -- avg min
SELECT INTO max_rozn_ MAX(price) FROM price_list WHERE price_col=0 AND tid=rec_list.tid AND firm IN (SELECT firm_id FROM hlp_pricebot_firm_use_rozn) GROUP BY tid; --max max
SELECT INTO min_rozn_ MIN(price) FROM price_list WHERE price_col=0 AND tid=rec_list.tid AND firm IN (SELECT firm_id FROM hlp_pricebot_firm_use_rozn) GROUP BY tid; --min max
SELECT INTO avg_rozn_ AVG(price) FROM price_list WHERE price_col=0 AND tid=rec_list.tid AND firm IN (SELECT firm_id FROM hlp_pricebot_firm_use_rozn) GROUP BY tid; --avg max
SELECT INTO firm_count_ count(*) FROM price_list WHERE price_col=5 AND tid=rec_list.tid AND firm IN (SELECT firm_id FROM hlp_pricebot_firm_use_vhod) GROUP BY tid; -- min min
UPDATE pricebot_data
SET
vhod_max=max_vhod_,
vhod_min=min_vhod_,
rozn_min=min_rozn_,
rozn_max=max_rozn_,
vhod_base=base_vhod_,
rozn_avg=avg_rozn_,
vhod_avg=avg_vhod_,
basefirm_price1=base1_,
basefirm_price2=base2_,
firm_count=firm_count_
WHERE tid=rec_list.tid;
END LOOP;