2017-09-05 9 views
0

다음 문제가 있습니다. 임의의 ID이 같은 연속 점 간의 차이를 계산해야합니다. 다음 :비 aggregat 필드/값을 가진 InfluxDB 믹싱 합계 함수

SELECT difference(value_field) FROM mesurementName WHERE "IdField" = '10'

작품, 분실 IdField하지만 IdField 각 연속 점의 차이를 반환 (단 time는 결과를 쿼리 전파됩니다). 필자의 경우 time은 고유하지 않습니다 (즉, 측정시 동일한 timestamp의 여러 점이 포함될 수 있지만 IdField은 서로 다릅니다). 그래서 시도 :

SELECT difference(value_field), IdField FROM mesurementName WHERE "IdField" = '10'

산출되는 : error parsing query: mixing aggregate and non-aggregate queries is not supported!!

나의 다음 시도가 하위 쿼리를 사용했다 : IdField에서 항상 null 값의 결과

SELECT IdField, diff 
FROM (
    SELECT 
     difference(flow_val) as diff 
    FROM 
     mesurementA 
    WHERE "IdField" = '10' 
) 

.

문제를 해결하는 방법에 대한 도움이나 제안을 요청드립니다. 그런데, 우리는 내가 있다는 사람이 붙어한다면 더 이상

답변

0

JOIN를 지원하지 않는 InfluxDB 1.3을 사용하고, 다음 솔루션은 다음과 같은있다 :

SELECT difference(value_field) FROM mesurementName GROUP BY "IdField" 

위는 어떻게 든 암시 "IdField"을 추가 일련의 결과에 INTO

으로 측정 결과로 전파됩니다.