• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Criar um problema

Use subconsultas para vincular várias consultas

Com NRQL, você pode executar um subquery, que é uma consulta aninhada dentro de outra consulta. Uma subconsulta é uma consulta aninhada dentro de outra consulta: elas permitem que você use o resultado de uma consulta em outra consulta. Com subconsultas, você pode:

  • Realizar cálculos nas entidades filhas de uma entidade controladora
  • Consulte o log de erros para hosts com alta carga de CPU com base na utilização de CPU do agente de infraestrutura

No NRQL, as subconsultas podem aparecer na instrução SELECT e na cláusula WHERE .

Aqui está um exemplo de consulta para obter uma contagem de transações com duração acima da média:

SELECT count(*) FROM Transaction WHERE duration > (SELECT average(duration) FROM Transaction)

Os resultados de uma subconsulta devem fazer sentido no contexto. No exemplo acima, a condição maior que na cláusula WHERE requer uma subconsulta que retorne um único valor. Uma subconsulta que retorna um conjunto de valores (por exemplo, uma subconsulta uniques() ) falharia.

Você também pode aninhar uma subconsulta dentro de outra subconsulta. NRQL permite no máximo três subconsultas, aninhadas ou não aninhadas, em uma única consulta.

O intervalo de tempo da subconsulta será igual ao da consulta externa, a menos que seja explicitamente especificado com SINCE/UNTIL. Em um painel, escolher uma janela no seletor de hora alinha o intervalo de tempo da subconsulta com o da consulta externa. Se você definiu Ignore Time Picker para esse gráfico, o intervalo de tempo da subconsulta e o intervalo de tempo da consulta externa não serão iguais.

Execução de subconsulta

Durante a execução da consulta, cada subconsulta é executada de forma independente e seu resultado é usado como um valor constante, ou conjunto de valores, na consulta externa. Devido a este modelo de execução, as subconsultas não podem referenciar atributos e valores da consulta externa.

O limite de duração da consulta é respeitado para consultas com subconsultas. Isso significa que todas as subconsultas e a consulta externa devem concluir a execução dentro do limite de duração.

O número máximo de resultados que uma subconsulta pode retornar é igual ao valorLIMIT MAX : 5.000. Quando esse limite é excedido, isso pode resultar em resultados incompletos e nesta mensagem de erro: "A subconsulta pode ter atingido o limite máximo de membros de resultado, o que pode causar um resultado incompleto."

Subconsultas e agregação aninhada

Embora pareçam semelhantes, as subconsultas são diferentes das agregações aninhadas, que permitem a agregação do resultado de uma consulta aninhada. Agregações aninhadas são usadas na cláusula FROM , enquanto subconsultas são usadas na instrução SELECT e na cláusula WHERE .

Limites

  • Subconsultas não são suportadas na condição do alerta NRQL. Como a consulta com subconsultas exige múltiplas passagens pelos dados, as subconsultas são incompatíveis com alertas de streaming.
  • As cláusulas TIMESERIES e COMPARE WITH , que fazem com que a consulta retorne vários conjuntos de resultados, não são suportadas em subconsultas.
  • As subconsultas não podem aparecer na cláusula FACET , embora possam aparecer nas cláusulas WHERE usadas em FACET CASES.
  • Tem limites no número de resultados

Exemplos de subconsulta

Aqui estão alguns exemplos de subconsultas:

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.