Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie rekordów z przedziału czasu (data, godzina)
jurcio6
post
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 4.11.2010

Ostrzeżenie: (0%)
-----


Witam,

Tabela: 'sensor'
Pola:
'id' (auto-increment)
'sDate' (YYYY-MM-DD)
'sTime' (HH:MM:SS)
'temperature' (int)
'light' (int)

Mam problem z zapytaniem, które ma pobierać z tabeli wartości w danym przedziale czasu - np. od dnia 2010-11-05 od godziny 09:00:00, do dnia 2010-11-10 do godziny 10:00:00.

Zapytanie, które napisałem, zamiast pobierać wszystkie rekordy z zakresu, pobiera mi rekordy z każdego dnia pomiędzy określonymi godzinami - wiem, że jest ono błędne i wiem czemu tak działa, ale nie wiem jak je poprawić, aby spełniało podaną wyżej funkcjonalność:
  1. SELECT temperature, light, sTime, sDate FROM sensor WHERE ((sDate BETWEEN '2010-11-05' AND '2010-11-10') AND (sTime BETWEEN '09:00:00' AND '10:00:00')) ORDER BY sDate, sTime DESC


Zapytanie ma zwrócić wszystkie rekordy od godziny 09:00:00 dnia 2010-11-05 do godziny 10:00:00 dnia 2010-11-10. W jaki sposób to napisać, aby było jak najbardziej optymalne? Będzie ono dosyć często wywoływane, ponieważ czujnik uploaduje dane co kilkadziesiąt sekund, więc musi być w miarę szybkie.

Proszę o pomoc!
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 05:36