EpmQueryAggregateFunction

<< Clique para Mostrar o Sumário >>

 

EpmQueryAggregateFunction

Retorna os dados de uma ou mais variáveis, separadas por vírgula, informadas no parâmetro @node, de acordo com o formato definido pela função de agregação indicada pelo parâmetro @aggregateFunction.

 

Sintaxe

SELECT Name, Timestamp, Quality, <type_function>(Value)
  FROM EpmQueryAggregateFunction(<[float]@timeZoneOffset>,
  <[datetime]@startTime>, <[datetime]@endTime>, <[bigint]@sampleInterval>,
  <[string]@aggregateFunction>, <[string]@node>)

 

Parâmetros

•<type_function>: Função de conversão para definir o tipo de dados dos valores resultantes da coluna Value. Os valores possíveis estão descritos no tópico EpmReadPropertyFunction

•<[float]@timeZoneOffset: Fuso horário a ser considerado. Os valores possíveis variam entre -12 e 14

•<[datetime]@startTime>: Data inicial do período a ser consultado. Deve ser utilizada uma String no formato yyyy-MM-dd HH:mm:ss

•<[datetime]@endTime>: Data final do período a ser consultado. Deve ser utilizada uma String no formato yyyy-MM-dd HH:mm:ss

•<[bigint]@sampleInterval>: Intervalo de tempo a ser utilizado para calcular a agregação, em milissegundos

•<[string]@aggregateFunction>: Nome da função de agregação a ser utilizada. Os valores possíveis para este parâmetro são:

•Trend: Interpola os dados consultados de forma a serem melhor visualizados em gráficos

•Interpolative: Interpola os dados do intervalo consultado, retornando pontos conforme o intervalo definido no parâmetro @sampleInterval

•Start: Equivale à função Interpolative, porém utiliza a estampa de tempo original do primeiro valor do intervalo de amostragem

•End: Equivale à função Interpolative, porém utiliza a estampa de tempo original do último valor do intervalo de amostragem

•StartBounds: Equivale à função Interpolative, porém utiliza a estampa de tempo original do primeiro valor do intervalo de amostragem. Leva em conta os Simple Bounding Values

•EndBounds: Equivale à função Interpolative, porém utiliza a estampa de tempo original do último valor do intervalo de amostragem. Leva em conta os Simple Bounding Values

•Average: Calcula a média aritmética dos valores dos dados com qualidade boa dentro do intervalo de amostragem definido no parâmetro @sampleInterval

•TimeAverage: Calcula a média ponderada pelo tempo utilizando o método Interpolated Bounding Values dentro do intervalo de amostragem definido no parâmetro @sampleInterval

•TimeAverage2: Calcula a média ponderada pelo tempo utilizando o método Simple Bounding Values dentro do intervalo de amostragem definido no parâmetro @sampleInterval

•Total: Retorna a totalização dos dados do intervalo de amostragem definido no parâmetro @sampleInterval

•Total2: Retorna a totalização dos dados com qualidade boa do intervalo de amostragem definido no parâmetro @sampleInterval

•Count: Retorna a quantidade de dados presentes no intervalo de amostragem definido no parâmetro @sampleInterval

•Minimum: Informa o menor valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval. A estampa de tempo corresponde ao horário do início de cada intervalo de amostragem

•Maximum: Informa o maior valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval. A estampa de tempo corresponde ao horário do início de cada intervalo de amostragem

•MinimumActualTime: Informa o menor valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval, com a diferença de que a estampa de tempo apresentada corresponde ao momento de ocorrência do menor valor encontrado

•MaximumActualTime: Informa o maior valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval, com a diferença de que a estampa de tempo apresentada corresponde ao momento de ocorrência do maior valor encontrado

•Range: Retorna a diferença entre o menor e o maior valor encontrado dentro do intervalo de amostragem informado no parâmetro @sampleInterval. Ignora valores de qualidade ruim

•Minimum2: Informa o menor valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval. A estampa de tempo corresponde ao horário do início de cada intervalo de amostragem. Leva em conta os Simple Bounding Values

•Maximum2: Informa o maior valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval. A estampa de tempo corresponde ao horário do início de cada intervalo de amostragem. Leva em conta os Simple Bounding Values

•MinimumActualTime2: Informa o menor valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval, com a diferença de que a estampa de tempo apresentada corresponde ao momento de ocorrência do menor valor encontrado. Leva em conta os Simple Bounding Values

•MaximumActualTime2: Informa o maior valor encontrado nos dados dentro do intervalo de amostragem definido no parâmetro @sampleInterval, com a diferença de que a estampa de tempo apresentada corresponde ao momento de ocorrência do maior valor encontrado. Leva em conta os Simple Bounding Values

•Range2: Retorna a diferença entre o menor e o maior valor encontrado dentro do intervalo de amostragem informado no parâmetro @sampleInterval. Ignora valores de qualidade ruim e leva em conta os Simple Bounding Values

•Delta: Retorna a diferença entre o primeiro e o último valores de qualidade boa dentro de cada intervalo de amostragem

•DeltaBounds: Retorna a diferença entre o primeiro e o último valores de qualidade boa dentro de cada intervalo de amostragem. Leva em conta os Simple Bounding Values

•AnnotationCount: Informa quantas anotações a variável possui dentro do intervalo de amostragem

•DurationInStateZero: Retorna o tempo total, em milissegundos, em que o valor se manteve em 0 (zero) dentro do intervalo de amostragem

•DurationInStateNonZero: Retorna o tempo total, em milissegundos, em que o valor se manteve diferente de 0 (zero) dentro do intervalo de amostragem

•PercentInStateZero: Retorna a porcentagem do tempo, em relação ao tempo total do intervalo de amostragem, em que o valor se manteve em 0 (zero)

•PercentInStateNonZero: Retorna a porcentagem do tempo, em relação ao tempo total do intervalo de amostragem, em que o valor se manteve diferente de 0 (zero)

•NumberOfTransitions: Informa quantas transições ocorreram dentro do intervalo de amostragem entre os valores 0 (zero) e 1 (um)

•DurationGood: Retorna o tempo, em milissegundos, em que os dados estavam com qualidade boa dentro do intervalo de amostragem. A qualidade é definida a partir da qualidade dos dados dos extremos do intervalo

•DurationBad: Retorna o tempo, em milissegundos, em que os dados estavam com qualidade ruim dentro do intervalo de amostragem. A qualidade é definida a partir da qualidade dos dados dos extremos do intervalo

•PercentGood: Retorna a porcentagem do tempo, em relação ao tempo do intervalo de amostragem, em que os dados estavam com qualidade boa

•PercentBad: Retorna a porcentagem do tempo, em relação ao tempo do intervalo de amostragem, em que os dados estavam com qualidade ruim

•WorstQuality: Retorna a pior qualidade encontrada no intervalo especificado no parâmetro @sampleInterval

•WorstQuality2: Retorna a pior qualidade encontrada no intervalo especificado no parâmetro @sampleInterval. Leva em conta os Simple Bounding Values

•StandardDeviationPopulation: Retorna o desvio padrão populacional (n) no intervalo solicitado. Inclui os Simple Bounding Values

•VariancePopulation: Retorna a variância para a função StandardDeviationPopulation

•StandardDeviationSample: Retorna o desvio padrão amostral (n - 1) no intervalo solicitado

•VarianceSample: Retorna a variância para à função StandardDeviationSample

•<[string]@node>: Variável ou variáveis a serem consultadas. Deve ser informado o nome ou os nomes completos entre aspas simples e separados por vírgula

 

Campos do Resultado

•Name: Nome da variável ou variáveis consultadas

•Timestamp: Estampa de tempo dos dados

•Quality: Qualidade dos dados

•Value: Valor dos dados

 

Exemplo

Para retornar os dados da variável RandomTags_Random1 no período entre 10:23 e 11:23 do dia 07/12/2020, com um fuso horário de -3 (menos três) horas e interpolados a cada 5 (cinco) minutos, use a declaração a seguir.

SELECT Name, Timestamp, Quality, doubleval(Value) FROM
  EpmQueryAggregateFunction(-3, '2020-12-07 10:23:00', '2020-12-07 11:23:00',
  300000, 'Interpolative', 'RandomTags1')

 

Função EpmQueryAggregateFunction

Função EpmQueryAggregateFunction

Esta página foi útil?