On 2010.04.15 10:13, Linas Petkevičius wrote: > Uzduotele. Ar teisingai suprantu? Ish krano pradejo kapseti vanduo ir > kas kelios sekundes nukrenta lasas. Kiekvienas nukritimas - laikas. > Palasejo nuo keliu minuciu iki paru ir sustojo. Po kazkiek laiko vel > visas process ish pradziu. Reik surast kiekvieno lasejimo pradzia ir > pabaiga? Mhm.... Na, nepaminėjau, kad lašėt gali maksimaliai 3 minutes, bet tai neturi reikšmės, nes tai - konfigūruojamas dalykas. Dabar tas daroma, bet išrinkinėjant duomenis už bent kažkiek ilgesnį laiką serveriukas jau pabezda nuo dūšios... Daroma tas kaip jau sakiau - laikai apvalinami. Apvalinimas tiek prikolnas, kad pradžioj net nesupratau. Laikas verčiamas floatu, floatas dauginamas smarkiai, dalinamas atgal ir verčiamas atgal į datą. Dauginama/dalinama - grubiai tariant nubraukiama krūva skaičių po kablelio. Suapvalinama iki 4 minučių tikslumo, t.y. visos eilutės kuriose datos patenka į tas 4 minutes turi tą vieną laiką. Tada jau turint šituos visus laikus, su kiekvienu atskirai vėl lendama į duombazę, selektinama to laiko +-2 minutės datos ir ieškoma min/max. Darbo vargšeliui oracle tikrai užtenka. Ypač atsižvelgiant į tai, kad realiai duomenys yra per 3 ar 4 lenteles, kurios joininamos, joinanmi papildomi subselektai, yra papildomos sąlygos išrinkimui.