У меня следующий запрос:
SELECT AVG(val) from floatTable
WHERE tagindex IN(1,2,3,4)
AND DateAndTime > '$first_of_year'
Возвращает среднее значение для всех значений, измеренных для этих четырех тегов за год до даты. Поскольку я уже получаю эти данные, как я могу получить данные с первого числа месяца, с первой недели и с полуночи? У меня уже есть эти даты, рассчитанные как $ first_of_month, $ first_of_week и $ midnight. Я пытаюсь свести к минимуму запрос и надеялся, что кто-нибудь может помочь мне собрать немного магии SQL, чтобы вернуть эти данные в виде одного запроса или оптимизированного набора запросов. Этот запрос занимает в среднем 300 секунд, поэтому я хочу сделать это как можно меньше.
Заранее спасибо.