NRQL은 SELECT
절 내에서 기본 및 고급 수학 연산자의 사용을 지원합니다. 개별 속성과 집계 함수의 결과 모두에 수학적 계산을 적용할 수 있습니다.
기본 수학 연산자 사용 SELECT
NRQL에서 기본 수학 함수를 사용하려면 SELECT
절에 연산자를 포함하세요.
- 덧셈:
+
- 빼기:
-
- 곱셈:
*
- 분할:
/
여기 몇 가지 예가 있어요.
SELECT duration-databaseDuration FROM Transaction
SELECT count(*)/uniqueCount(session) FROM PageView
SELECT average(duration-databaseDuration) FROM Transaction
고급 수학 연산자 사용 SELECT
NRQL에는 복잡한 계산에 사용할 수 있는 몇 가지 고급 수학 함수도 포함되어 있습니다. 이는 데이터를 처리하여 UI에 보다 효과적으로 표시하려는 경우 또는 쿼리된 결과를 단일 단계로 계산하려는 경우에 유용합니다.
abs
abs(n)
n 의 절대값을 반환합니다. 음수가 아닌 n 의 경우 n 을 반환하고 음수 n 의 경우 양수 - n 을 반환합니다. 예를 들어 abs(2) = 2
및 abs(-4) = 4
.
clamp_max
, clamp_min
클램핑 기능은 값에 상한 또는 하한을 적용합니다. 예를 들어, clamp_max(duration, 10)
기간을 반환합니다. 단, 10을 초과하지 않는 한 10이 반환됩니다. 마찬가지로 clamp_min(duration, 1)
1보다 작은 값을 반환하지 않습니다.
다음 예제 쿼리 및 차트는 값을 96-98 범위로 유지하기 위해 최소값과 최대값을 모두 고정한 결과를 보여줍니다.
FROM SystemSample SELECT average(cpuPercent) AS 'raw',clamp_min(clamp_max(average(cpuPercent), 98), 96) AS 'clamped'TIMESERIES
클램프 기능이 적용된 원시 데이터를 보여주는 샘플 그래프.
exp
인수의 자연 지수 함수를 계산합니다. exp(n) = pow(e, n)
.
대수 함수: ln
, log
, log2
, log10
이 함수는 다양한 밑수에 대한 인수의 로그를 계산합니다.
ln(n)
자연 로그 계산: 로그 밑 e.log2(n)
로그 밑 2를 계산합니다.log10(n)
밑이 10인 로그를 계산합니다.log(n, b)
임의의 밑을 사용하여 로그를 계산할 수 있습니다. b.- 모든 로그는
log(pow(b, n), b) = n
항등식을 충족합니다.
모든 염기에 대해 log(0)
은(는) 정의되지 않습니다. 0일 수 있는 로그를 취하면 결국 쿼리에서 no value
이 반환될 수 있습니다.
pow
pow(n, m)
n 의 거듭제곱 m 을 계산합니다. 예를 들어, n 의 m 복사본이 있는 n * n * ... * n
입니다.
반올림 함수: round
, floor
, ceil
이 세 가지 함수는 십진수를 이웃 정수 중 하나로 강제 적용합니다.
floor(n)
n 보다 작거나 같은 가장 가까운 정수를 반환합니다.ceil(n)
("ceiling"의 줄임말) n 보다 크거나 같은 가장 가까운 정수를 반환합니다.round(n)
어느 방향에서든 n 에 가장 가까운 정수를 반환합니다.
바닥, 원형 및 천장 기능이 적용된 원시 데이터를 보여주는 샘플 그래프.
sqrt
sqrt(n)
n 의 제곱근, 즉 sqrt(n) * sqrt(n) = n
과 같은 숫자를 반환합니다.
STRING 또는 FLOAT가 있는 결과
NRQL이 수학 계산에 있는 문자열을 처리하는 방법은 다음과 같습니다.
예:
sum(1+STRING)
= 0sum(1+MIXED)
=MIXED
이 문자열인 레코드를 건너뜁니다.average(1+STRING)
= 0average(1+MIXED)
=MIXED
이 문자열인 레코드를 건너뜁니다.
NULL과 0은 모두 대시보드에 0으로 표시됩니다. NULL 값을 다른 숫자 값으로 재정의하려면 다음 구문을 사용하세요.
SELECT average(purchasePrice OR 0)
이것은 NULL 값을 0 또는 지정된 숫자로 대체합니다.
팁
무언가가 NULL 또는 0을 반환하는지 여부에 관계없이 이를 사용할 수도 있습니다. (zero) OR 1
은 0을 반환하고 (NULL) OR 1
1을 반환합니다.