• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

이 한글 문서는 사용자의 편의를 위해 기계 번역되었습니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

여러 쿼리를 연결하려면 하위 쿼리를 사용하세요.

NRQL을 사용하면 다른 쿼리 내에 중첩된 쿼리인 subquery 을 실행할 수 있습니다. 하위 쿼리는 다른 쿼리 내에 중첩된 하나의 쿼리입니다. 이를 통해 한 쿼리의 결과를 다른 쿼리에서 사용할 수 있습니다. 하위 쿼리를 사용하면 다음을 수행할 수 있습니다.

  • 상위 엔티티의 하위 엔티티에 대한 계산 수행
  • 인프라 에이전트의 CPU 사용률을 기반으로 CPU 로드가 높은 호스트에 대한 오류 로그 보기

NRQL에서 하위 쿼리는 SELECT 문과 WHERE 절에 나타날 수 있습니다.

다음은 평균 이상의 기간을 가진 트랜잭션 수를 가져오는 쿼리의 예입니다.

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

하위 쿼리의 결과는 컨텍스트에서 의미가 있어야 합니다. 위의 예에서 WHERE 절의 보다 큼 조건에는 단일 값을 반환하는 하위 쿼리가 필요합니다. 값 집합을 반환하는 하위 쿼리(예: uniques() 하위 쿼리)는 실패합니다.

하나의 하위 쿼리를 다른 하위 쿼리 안에 중첩할 수도 있습니다. NRQL은 단일 쿼리 내에서 중첩되거나 중첩되지 않은 최대 3개의 하위 쿼리를 허용합니다.

하위 쿼리의 시간 범위는 SINCE/UNTIL 로 명시적으로 지정하지 않는 한 외부 쿼리의 시간 범위와 동일합니다. 대시보드의 타임 피커 에서 창을 선택하면 하위 쿼리의 시간 범위가 외부 쿼리의 시간 범위와 맞춰집니다. 해당 차트에 대해 Ignore Time Picker 설정한 경우 하위 쿼리의 시간 범위와 외부 쿼리의 시간 범위는 동일하지 않습니다.

하위 쿼리 실행

쿼리 실행 중에 각 하위 쿼리는 독립적으로 실행되며 해당 결과는 외부 쿼리에서 상수 값 또는 값 집합으로 사용됩니다. 이 실행 모델로 인해 하위 쿼리는 외부 쿼리의 속성과 값을 참조하지 못할 수 있습니다.

쿼리 기간 제한 은 하위 쿼리가 있는 쿼리에 적용됩니다.즉, 모든 하위 쿼리와 외부 쿼리는 기간 제한 내에서 실행을 완료해야 합니다.

하위 쿼리가 반환할 수 있는 최대 결과 수는 LIMIT MAX 값인 5,000과 동일합니다. 해당 제한을 초과하면 불완전한 결과가 발생할 수 있으며 "하위 쿼리가 최대 결과 멤버 제한에 도달하여 불완전한 결과가 발생할 수 있습니다."라는 오류 메시지가 나타날 수 있습니다.

하위 쿼리 및 중첩 집계

유사해 보이지만 하위 쿼리는 중첩 쿼리의 결과를 집계할 수 있는 중첩 집계 와 다릅니다. 중첩된 집계는 FROM 절에서 사용되는 반면 하위 쿼리는 SELECT 문 및 WHERE 절에서 사용됩니다.

제한

  • 하위 쿼리는 NRQL 경고 조건에서 지원되지 않습니다.하위 쿼리가 있는 쿼리는 데이터를 여러 번 통과해야 하므로 하위 쿼리는 스트리밍 경고와 호환되지 않습니다.
  • 쿼리가 여러 결과 집합을 반환하도록 하는 TIMESERIESCOMPARE WITH 절은 하위 쿼리에서 지원되지 않습니다.
  • 하위 쿼리는 FACET 절에 나타날 수 없지만 FACET CASES 에서 사용되는 WHERE 절에는 나타날 수 있습니다.
  • 결과 수에 제한 이 있습니다.

하위 쿼리 예

다음은 몇 가지 예제 하위 쿼리입니다.

Copyright © 2024 New Relic Inc.

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