![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.12.2016 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie
chciałem użyć opcji szukania na forum ale wynik wyszukania czegokolwiek to: Napotkane błędy: Wystąpił bląd. Wróć i spróbuj ponownie. connection to localhost:3312 failed (errno=111, msg=Connection refused) --- Czy orientujecie się czy jest możliwość takiej oto operacji na danych w MySQL W bazie mamy 3 kolumy DataCzas Temperatura Nasłonecznienie % 2016-05-12 12:00:00 10 StopniC 25 2016-05-12 13:00:00 15 StopniC 91 2016-05-12 14:00:00 13 StopniC 92 2016-05-12 15:00:00 13 StopniC 91 2016-05-12 16:00:00 12 StopniC 95 2016-05-12 17:00:00 13 StopniC 98 Chcę pobrać z Bazdy Danych informację czy zaistniała sytuacja gdy: nasłonecznienie wyniosło powyżej 90% i trwało minimum 4 godziny. SELECT * FROM Tabela WHERE Nasłonecznienie % >90 = w ten sposób wyciągamy informacje, która mówi o tym że przekroczono próg 90% + wyciągnięcie daty i czasu ale chodzi o to czy to nasłonecznienie trwało minimum 4 godziny NIE PRZERWANIE (IMG:style_emoticons/default/smile.gif) Jeśli tak taką informację wyrzucamy na stronę np : Wystąpiło dobre nasłonecznienie (IMG:style_emoticons/default/smile.gif) (IMG:style_emoticons/default/tongue.gif) Sprawa dotyczy operacji na czasie plus najprawdopodobniej JasaScript Być może zapytanie przyda się komus innemu ponieważ zadanie jest ciekawe (IMG:style_emoticons/default/smile.gif) mysql> SELECT TIMEDIFF('2014-02-17 12:10:08', '2014-02-16 12:10:08'); Result: '24:00:00' ? Proszę o pomoc Jestem w stanie na tem moment wyciągnąć do JSON datę w której nasłonecznienie > 90 Szukam odpowiedzi być może w JavaScript by przetworzyć te dane Pomar muszę robić z ok 48 godzin do tyłu i to wszystko CODE [{"naslonecznienie":"91","dataczas":"2016-12-01 02:00:00"},
{"naslonecznienie":"92","dataczas":"2016-12-01 03:00:00"}, {"naslonecznienie":"93","dataczas":"2016-12-01 04:00:00"}, {"naslonecznienie":"95","dataczas":"2016-12-01 05:00:00"}, {"naslonecznienie":"96","dataczas":"2016-12-01 06:00:00"}, {"naslonecznienie":"92","dataczas":"2016-12-01 07:00:00"}] Ten post edytował tombag 24.12.2016, 00:59:01 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Jak juz w ten sposób wyciągniesz sobie godzinę, kiedy przekroczyło 90%, to teraz musisz znaleźć najbliższe, które spadło poniżej 90%. Czyli:
I obliczasz sobie różnicę. I już wiesz, czy trwało mniej, czy też więcej niż 4 h. Musisz tylko jeszcze odpowiednio zareagować na NULL w `koniec` - może się zdarzyć, gdy takie zdarzenie jeszcze trwa. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
tombag,
a pomiary są dokonywane i zapisywane zawsze co godzinę? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.12.2016 Ostrzeżenie: (0%) ![]() ![]() |
trueblue tak na razie sobie wpisałem, że co godzinę, na razie to wystarczy.
czyli taki sposób gdzie wybieram sobie w ten sposób komórki spełniające >90% SELECT * FROM danet where naslonecznienie > 90 i stwarzam nową tablicę w javascript i w niej umieszczam krańcowe wyniki dataczas które zaszły wyżej i na ich podstawie obliczam różnice ile minęło czasu jest chyba podobnym rozwiązaniem, do którego doszedłem jakoś sam (IMG:style_emoticons/default/tongue.gif) jeszcze niestety nie rozumiem SQL dobrze jestem zielony ale to sie zmienia (IMG:style_emoticons/default/smile.gif) Ale co oznacza ten NULL na koniec to nie rozumiem :/ |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
tombag,
nadal nie wiem jak często będą zapisy. Chciałem tylko wspomnieć, że gdyby zdarzyła się sytuacja rzadszych zapisów, to zapytanie, które podał mmmmmmm nie sprawdzi się. Np. dla sytuacji: 2016-05-13 10:00:00 90 2016-05-13 15:00:00 20 Choć różnica wynosi 5 godzin, to nie wiadomo przez jaki czas w tym zakresie nasłonecznienie miało wartość >90. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 11:13 |