값이 채워지는 Influx 데이터베이스가 있습니다. 이 값은 Grafana가 제공합니다. 내가 원하는 것은 선택된 시간 간격에 따라 실제 값을 얻는 것입니다.InfluxDB 하위 쿼리를 사용하여 값 빼기
현재 나는 하나의 메트릭에 대한 다음 쿼리를 가지고 :
SELECT mean("value") FROM "table" WHERE $timeFilter GROUP BY time($interval) fill(null)
내가 원하는 것은 단지 그 구간 내에서 값을 계산하므로, 그 간격에서 가장 낮은 값을 빼기하는 것입니다. 따라서 그래프는 0에서 시작해야합니다. 그 간격에서 가장 낮은 값을 얻으려면 내가 사용
SELECT min("value") FROM "table" WHERE $timeFilter
그래서 나는이 같은 두 (하위 쿼리와)가 작동합니다 결합 생각 :
SELECT mean("value") - (SELECT min("value") FROM "table" WHERE $timeFilter) FROM "table" WHERE $timeFilter GROUP BY time($interval) fill(null)
불행하게도이 나던 작품. 쿼리가 하위 쿼리로 허용되지 않습니다.
어떤 인플 럭스 버전을 사용하고 있습니까? 원칙적으로 1.2와 같은 것을 할 수 있어야합니다. – Pigueiras
InfluxDB 셸 버전 : 1.2.0을 사용하고 있습니다. 하위 쿼리가 가능하다는 것을 알고 있지만 설명서는 '발신자'섹션에만 있습니다. 이 문서에서는 다른 유형의 하위 쿼리 예제를 제공하지 않습니다. – Nhz
당신은 완전히 옳았습니다, 불가능한 것처럼 보입니다. grafana로 템플릿 작업을하는 중 일부 해킹에서 생각했지만 작동하지 않습니다. 왜냐하면'min ("count") 대신 timestamp를 보여주기 때문입니다. 당신이 얻을 수있는 최선의 방법은 min을 계산하고 쿼리에서 상수를 빼는 것입니다. ( – Pigueiras