Onnistuukohan suoraan sql-kyselyllä, eli taulussa on vaikka seuraavat rivit:
tapahtuma, alkuaika, loppuaika
========= ======== =========
tapahtuma1, 10.00, 12.00
tapahtuma2, 11.30, 12.30
tapahtuma3, 13.00, 14.00
Haluttu tulos:
tapahtuma, alkuaika, loppuaika
========= ======== =========
tapahtuma1, 10.00, 12.30
tapahtuma3, 13.00, 14.00
Tapahtumien nimillä ei väliä, ne voidaan ajatella tässä kohtaa vaikka id:ksi.
Päällekkäisten ajanjaksojen yhdistäminen
7
787
Vastaukset
- Anonyymi
Onnistuu.
- Anonyymi
Ei onnistu.
- Anonyymi
Suoraan mysqli-queryllä tehtävä tuntuu hankalalta ellei jopa mahdottomalta, Mikäli tarvetta on paljon, niin kannattaa rakennella oma nettikalenteri.
https://tuuletus.net/kalenteri.php
Yllä mainittu on esimerkki miten varauskalenterin voi laittaa julki. Esimerkissä käytin kuvan mukaista ja kysymyksessä esittelemääsi varaustilannetta. - Anonyymi
Tuolta sivulta saattaa löytyä ratkaisu.
https://hoopercharles.wordpress.com/2009/12/08/sql-combining-over-lapping-date-rows/
Vaikka tuolla pelataan päivämäärillä, niin idea on sama.- Anonyymi
Päivän makeimmat naurut tuli kun tuota Charles Hooperin mittatilaustyötä luki. Saattoi harmittaa jos tilaaja ilmoitti että kertakäyttötarve oli eilen ja se saatiinkin tehtyä ruutupaperilla. Kohtalaisen paljon rivejä mokoman pikkujutun takia :D
- Anonyymi
Muutamalla sql-rivillä näyttäisi onnistuvan tuon tyyppisen ongelman ratkaisu.
https://dbfiddle.uk/?rdbms=sqlserver_2017&fiddle=c9be3f243ac5f3d7f912d71a836b22ca
Ketjusta on poistettu 2 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 741084
- 68984
Miltä se tuntuu
Miltä se tuntuu havahtua, että on ollut ihmistä kohtaan, joka on rakastanut ja varjellut, täysi m*lkku? Vai havahtuuko s104938- 47932
- 51885
- 49694
- 31649
Mitä se olisi
Jos sinä mies saisit sanoa kaivatullesi mitä vain juuri nyt. Ilman mitään seuraamuksia yms. Niin mitä sanoisit?34587- 50580
- 38536