본문 바로가기

0. SW 사용법/DAX

DAX's 구조 및 기본 연산자

DAX - 함수를 사용한 측정값(Measure)의 구조


DAX를 대표하는 CALCULATE함수 보는 측정값의 기본 구조 

(1) 측정값 이름 : 식의 맨 앞에는 측정값의 이름을 입력한다. 이름은 사용자가 임의로 만들고, 중복하지 않는다.

(2) CALCULATE : 함수 이름을 정확히 입력하고 

(3) ( ) : 함수 구문의 시작에는 '(', 끝에는 '('를 입력한다. 

(4) measure expression : 측정식을 입력한다. 이 때 측정식은 이미 만들어진 측정식 이름이거나, 직접 작성한 측정식이다.

(5) filter1, filter2 : 어떤 데이터를 기준으로 측정식(measure expression) 실행하는지 필터링 구문을 입력한다.




주의! 측정값 이름과 실제 처리 사항 사이에는 '='이 아닌 ':='을 입력다.



연산(operation | calculation)은?

하나 이상의 대상으로부터 새로운 것을 만들어 내는 과정으로, 데이터를 처리하는 과정에서 그 하나는 숫자 일 수도 있고, 문자 또는 논리값일 수 있다. 


연산자(operator)란? 

숫자과 숫자, 문자와 숫자 등을 이용해 새로운 것을 만들어 내는 과정에서 사용되는 규칙이다. DAX의 연산자의 종류에는 산술, 비교, 논리, 텍스트 연결 등이 있다. 이들이 하나의 수식에 사용됐을 경우 연산자 우선 순위라는 규칙이 적용된다.



1) 산술 연산자


산술연산자

의미

예제

산술연산자

의미

예제

+ plus sign

Addition

3+3

/

Division

3/3

- minus sign

Subtraction

3-3-1

^

Exponentitation

16^4

* asterisk

Multiplication

3*3

 

 

 



2) 비교 연산자


비교연산자

의미

예제

비교연산자

의미

예제

=

 같다  [지역] = "서울"

<>

 같지 않다

[지역] <> "서울"

<

 보다 작다  [날짜] < "2018-01-01"

>=

 크거나 같다

[총금액] >= 5000

>

 보다 크다

 [날짜] > "2018-01-01"

<=

 작거나 같다

[총금액] <= 5000



3) 논리 연산자

논리 연산자의 결과는 언제나 TRUE 또는 FALSE


텍스트연산

의미

예제

&& (double ampersand)

두 논리 표현식 사이에 AND 조건을 만듭니다. 모두 TRUE, 표현식의 최종 결과는 TRUE, 그렇지 않으면 조합은 FALSE가 됩니다.

[]=”서울&&
[
]=”도봉구

|| (double pipe symbol)

두 논리 표현식 사이에 OR 조건을 만듭니다. 두 식 중 하나라도 TRUE, 최종 결과는 TRUE, 둘 다 FALSE인 경우에만 결과가 거짓이 됩니다.

[]=”서울||
[
]=”도봉구

IN

테이블과 비교되는 각 행 사이에 논리 OR 조건을 만듭니다. 참고 : 테이블 생성자 구문은 중괄호를 사용합니다.

지역’[] IN {“서울”,”인천”,”부천”}




4) 텍스트 연결 연산자


텍스트연결연산

의미

예제

& (ampersand)

두 값을 연결하여 하나의 연속 텍스트 값을 생성합니다.

[] & ", " & []



5) 연산자 우선 순위

하나의 식에 여러 연산자가 사용된 경우, 아래의 순서대로 계산합니다.


(1) ^(Exponentiation)
(2) – Sign (as in –1)
(3) * and / Multiplication and division
(4) ! NOT (unary operator)
(5) + and – Addition and subtraction
(6) & Connects two strings of text (concatenation)
(7) =< ><=>=<> Comparison


'0. SW 사용법 > DAX' 카테고리의 다른 글

DAX: Time Intelligence 함수  (0) 2018.03.13
DAX: Filter+Calculate Engine 장착 - CALCULATE()  (1) 2018.02.23
DAX는...?  (0) 2018.02.22