|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
Есть таблица триплетов (id датчика, время, показание): create table triplets (id bigint, time bigint, value float); Нужно получить средние значения для датчиков 1,2 за время с 10 до 20? Оконные функции работают только по значениям поля, с функцией не работают, во всяком случае в PostgreSQL. Корректный запрос, но не отвечающий на поставленный вопрос: select id, time, value, avg(value) over (partition by time,id) from triplets where id in (1,2); Примерный закрос который вроде должен работать как надо, но не работает: select id, time, value, avg(value) over (partition by (time > 10 and time < 20),id) from triplets where id in (1,2); Вопрос: Каким стандартным запросом получить средние значения для датчиков 1,2 за время с 10 до 20? С помощью каких расширений можно решить задачу? Может я чего-то не знаю, тогда поделитесь плз, ключевыми словами. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2013, 19:32 |
|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
koriskКаким стандартным запросом получить средние значения для датчиков 1,2 за время с 10 до 20? Если бы время хранилось как у нормальный людей в поле типа TIME, то работал бы обычный запрос без всякой аналитики: Код: sql 1. 2. 3.
Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2013, 19:43 |
|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
Хаха! ) Спасибо большое. Что-то я перемудрил. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2013, 20:05 |
|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
Хотя нет. Это я вопрос не правильно сформулировал. Нужне результат N запросов: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
в виде: time|value 10:00| xxx 14:00| yyy 18:00| zzz ... либо Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
id|value 1| xxx 3| yyy 5| zzz ... Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2013, 21:03 |
|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
koriskХотя нет. Это я вопрос не правильно сформулировал. Вторая попытка тоже провалилась. Иди ещё подумай. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2013, 21:38 |
|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
korisk, Данных нет, а потому непонятно: 1. Датчики дают показания через фиксированный интервал времени? То есть регулярно? Или нет? 2. Как изменяется из меняемая величина Между показаниями, непрерывно или скачком? 3. Показания датчиков 1 и 2 синхронизированы по времени? Ответы на эти вопросы влияют на метод вычисления среднего за период. Удачи ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2013, 22:42 |
|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovВторая попытка тоже провалилась. Иди ещё подумай. Согласен, туплю, но ближайшее время надежда только на телепатов. :( Возможно, это можно назвать вычислением агрегатной функции по квадрату. lookat1. Датчики дают показания через фиксированный интервал времени? То есть регулярно? Или нет? Да, регулярно. lookat2. Как изменяется из меняемая величина Между показаниями, непрерывно или скачком? В общем случае скачком. lookat3. Показания датчиков 1 и 2 синхронизированы по времени? Удачи Да, показания синхронизированы. (у одновременных "отсчетов" time одинаковый) Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2013, 05:29 |
|
Оконные функции по оси времени
|
|||
---|---|---|---|
#18+
korisk Код: sql 1. 2.
b чем это отличается от обычного Код: sql 1. 2.
? koriskВозможно, это можно назвать вычислением агрегатной функции по квадрату.по какому такому "квадрату"? и вообще, не это ли вы ищете? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2013, 06:32 |
|
|
start [/forum/topic.php?fid=35&msg=38392800&tid=1552440]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 150ms |
0 / 0 |