Я отслеживаю производительность базовой станции в сети RF, сохраняя значения SSI в этой таблице:
TABLE BASE_SSI:
wayside BIGINT (PK)
timestamp datetime
base varchar(12)
ssi int
SSI читается один раз в час и сохраняется в этой таблице приблизительно за один год.
Я могу извлечь значения SSI за один день для любого данного дня в прошлом с помощью этого запроса:
select wayside,timestamp,base,ssi from BASE_SSI
where wayside=225520220000
and timestamp > DATEADD(day,-7,getdate())
and timestamp < DATEADD(day,-6,getdate())
order by timestamp desc
, который дает мне эти результаты:
wayside timestamp base ssi
225520220000 2018-11-02 00:21:09 423.3.01 33
225520220000 2018-11-01 22:31:03 423.3.01 32
225520220000 2018-11-01 20:40:53 423.3.01 32
225520220000 2018-11-01 18:50:45 423.3.01 31
225520220000 2018-11-01 17:00:35 423.3.01 33
225520220000 2018-11-01 15:10:26 423.3.01 34
225520220000 2018-11-01 13:20:20 423.3.01 38
225520220000 2018-11-01 11:30:11 423.3.01 37
225520220000 2018-11-01 09:40:03 423.3.01 35
225520220000 2018-11-01 07:49:03 423.3.01 35
225520220000 2018-11-01 05:59:50 423.3.01 34
225520220000 2018-11-01 04:09:43 423.3.01 34
225520220000 2018-11-01 02:19:34 423.3.01 34
Что мне нужно, так это запрос, который дает мне СРЕДНЮЮ СИУ за этот 24-часовой период в прошлом, по всем путям. Результаты должны быть:
wayside date base avg_ssi
225520220000 2018-11-01 423.3.01 34
225520230000 2018-11-01 423.2.21 21
225520240000 2018-11-01 423.4.11 18
225520250000 2018-11-01 423.1.21 55
225520260000 2018-11-01 422.2.01 62
225520270000 2018-11-01 452.3.07 33
225520280000 2018-11-01 425.1.03 25
Мне нужны только интегральные значения для средних значений ssi, как показано.
Я пытался использовать AVG (ssi) в операторе SELECT, но я не уверен, как применить это ко всем значениям обхода в выбранный период времени. Например, в исходном запросе
Я добавляю «AVG (ssi) как avg_ssi» в строку SELECT, но он выдает только «средний» SSI для каждой отдельной записи, который совпадает со значением SSI.
Моя псевдо-SQL-версия этого запроса будет «отображать 24-часовой средний SSI каждого обхода на заданную дату».