Osaakohan joku auttaa minua seuraavanlaisessa SQL kyselyssä: Minulla on tämän näköinen taulukko:
Laite IP Vika alkoi Vika loppui
112 11.6 10:10 11.6 10:23
112 11.6 10:25 11.6 10:45
.. .. ..
233 13.6 23:13 14.6 00:05
Tästä taulukosta haluaisin yhdistää kaikki alle 10min päästä ensimmäisen loppumisesta seuraavan alkamiseen tapahtuneet viat samaksi ja laskea samalla niiden kpl määrä. Eli kyselyni tulisi näyttää tältä:
Laite IP Vika Alkoi Vika loppui Kpl
112 11.6 10:10 11.6 10:45 2
233 13.6 23:13 14.6 00:05 1
... .. ..
Taulukko johon suoritan kyselyä on linkitetty joten siihen ei voi lisätä laskuria. Olen yrittänyt kaikenlaista mutta kyselystä tulee erittäin hidas (taulussani 25000 riviä). Onkos kellään vinkkejä miten tehdä kysely yksinkertaisesti.
Accessin Date kysely
aplykka
1
187
Vastaukset
- tohlo
Menisiköhän jotenkin seuraavasti tai edes seuraavanlaisella idealla:
select laite, min(alkoi), max(loppui), count(*)
from taulu
group by laite
having loppui-alkoi < cast('00:10') as time;
Siis ryhmitellään laitteen mukaan, ja näiden ryhmien sisällä vielä jollakin tavalla otetaan ne joiden kaikkien rivien lopun ja alun välissä on max 10 minuuttia. Luultavasti ei mene tällä tavalla (ainakin esimerkkisi 233-laitteen rivistä ei tulisi tulokseen mitään riviä), mutta ehkä saat jatkoideaa kehittelyyn tästä. :)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Vain vasemmistolaiset rakennemuutokset pelastavat Suomen
Kansaa on ankeutettu viimeiset 30+ vuotta porvarillisella minäminä-talouspolitiikalla, jossa tavalliselta kansalta on ot953761Persut huutaa taas: "kato! muslimi!"
Persut on lyhyessä ajassa ajaneet läpi kaksi työntekijöiden oikeuksien heikennystä, joita se on aiemmin vastustanut. Pe443091- 792997
- 192795
- 282714
- 522422
- 192177
- 602088
- 581886
KL: Mari Hynynen avoimena - Jouni-rakkaan ja Joel-pojan välit ovat nämä!
Mari Hynynen (ent. Perankoski) on naimisissa Jouni Hynysen kanssa. Marilla on edellisestä liitosta yksi lapsi, Joel Vola121838