Tema: Re: SQL
Autorius: Mindaugas J.
Data: 2010-04-15 10:25:07
Na problema tame, kad nėra aiškiai apibrėžta, kur yra intervalo pabaiga.

Taigi tau reikia sugalvoti konkretų laiko tarpą, kuriam praėjus nuo kažkokio įrašo, jau laikysi, kad tai yra kitas intervalas. Šitą gali išsiaiškinti

Jeigu tokio dalyko nėra, o reikia dinamiškai išskaičiuoti, tai ant greičio galiu sugalvoti tik tiek, kad galbūt reikėtų skaičiuoti įrašų dažnį ir pasikeitus dažniui daugiau negu kažkoks empirinis kriterijus laikyti, kad baigėsi/prasidėjo intervalas. Čia jau ne su SQL'u teks tai daryti, ir geriausia tai atlikti jau rašymo metu.

Kažkaip jaučiu, kad tau galbūt padėtų ši knygutė: http://www.akademinesleidyklos.lt/main.php?ID=79&StrukturaID=9&KatID=979

-Mindaugas J.


"NicMC" <easy@freemail.lt> wrote in message news:hq6dkv$2lq$1@trimpas.omnitel.net...
> On 2010.04.15 09:51, Linas Petkevičius wrote:
>> Tai yra gali atsirasti kokie penki irasai, kur data reiskia pradzia, o
>> po to koks 10 irasu apie pabaiga?
> 
> Emm.. Nu nia. Čia nėra įrašų pradžios ir pabaigos. Į duombazę pildomos 
> reikšmės, tuo pačiu pridedamas laukas kada ta reikšmė atsirado. Reikšmės 
> pildomos ne pastoviai, o kas kažkiek laiko. Reikia rasti intervalus kada 
> reikšmės pradėtos pildyt ir kada baigta.
> 
> Galimas datų variantas:
> +----------------------+
> | 20010-01-01 12:35:42 |
> +----------------------+
> | 20010-01-01 12:35:45 |
> +----------------------+
> | 20010-01-01 12:35:48 |
> +----------------------+
> | 20010-01-01 12:35:51 |
> +----------------------+
> | 20010-01-01 12:35:54 |
> +----------------------+
> | 20010-01-01 12:35:57 |
> +----------------------+
> | 20010-01-01 12:36:00 |
> +----------------------+
> | 20010-03-13  8:35:42 |
> +----------------------+
> | 20010-03-13  8:35:45 |
> +----------------------+
> | 20010-03-13  8:35:48 |
> +----------------------+
> | 20010-03-13  8:35:51 |
> +----------------------+
> | 20010-03-13  8:35:54 |
> +----------------------+
> | 20010-03-13  8:35:57 |
> +----------------------+
> | 20010-03-13  8:36:00 |
> +----------------------+
> 
> 
> 
> 
> iš tokios atkarpėlės reikėtų išgauti: (pradžia 20010-01-01 12:35:42 / 
> pabaiga 20010-01-01 12:36:00) ir (pradžia 20010-03-13  8:35:42 / pabaiga 
> 20010-03-13  8:36:00)
> 
> Tarpai tarp intervalų gali būti nuo minučių iki parų.