<< 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.
SELECT Name, Timestamp, Quality, <type_function>(Value)
FROM EpmQueryAggregateFunction(<[float]@timeZoneOffset>,
<[datetime]@startTime>, <[datetime]@endTime>, <[bigint]@sampleInterval>,
<[string]@aggregateFunction>, <[string]@node>)
•<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
•Name: Nome da variável ou variáveis consultadas
•Timestamp: Estampa de tempo dos dados
•Quality: Qualidade dos dados
•Value: Valor dos dados
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