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ść:
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!