Показывать значения за день в коррелированном подзапросе в Графане - PullRequest
0 голосов
/ 04 марта 2020

Я пытаюсь создать график Time series для Графана, который показывает среднее значение за время. Данные поступают из четырех разных уровней качества, поэтому я хочу, чтобы каждый уровень умножался, чтобы отразить это. Выходные данные должны выглядеть как 2.85 один день, затем, возможно, 3.19 на следующий день и т. Д.

Пока что все, что я могу показать, - это среднее значение за все время. Пожалуйста, смотрите код ниже.

WITH days AS (
  SELECT time::date AS day
  FROM database.table
  GROUP BY day
  ORDER BY 1
)
SELECT 
  days.day AS time,
  (
    WITH level1 AS (SELECT count(level)*1 AS one FROM database.table where event = 'Certain Event' AND level = 'level1'),
    level2 AS (SELECT count(level)*2 AS two FROM database.table where event = 'Certain Event' AND level = 'level2'),
    level3 AS (SELECT count(level)*3 AS three FROM database.table where event = 'Certain Event' AND level = 'level3'),
    level4 AS (SELECT count(level)*4 AS four FROM database.table where event = 'Certain Event' AND level = 'level4'),
    total AS (SELECT count(level) AS tot FROM database.table where event = 'Certain Event')
    SELECT SUM((one + two + three + four) / tot::NUMERIC(4,1)) FROM level1, level2, level3, level4, total
  ) AS "Average level"
FROM days
WHERE $__timeFilter(day)
GROUP BY day
ORDER BY 1

Как только я добавляю AND date_trunc('day', time::date) = date_trunc('day', days.day) для получения значений в день, я получаю одну из двух следующих ошибок в зависимости от того, добавлю ли я ее в предложении WITH ... AS или в последнем предложении SELECT SUM(....

This type of correlated subquery pattern is not supported due to internal error

This type of correlated subquery pattern is not supported yet

Означает ли это, что то, что я пытаюсь сделать, на самом деле невозможно, или, возможно, существует другой способ вычисления значения, который не включает коррелированные подзапросы?

Любая помощь по этому вопросу будет принята с благодарностью!

...