Power Query M function reference - PowerQuery M | Microsoft Docs

 

Power Query M function reference - PowerQuery M

 

docs.microsoft.com

 

DAX는... 너무 기능이 제한적이다...

코딩이나 엑셀에서는 내 맘대로 변수도 만들고 해서 사용할 수 있었는데 DAX만으로 처리하기에는 제약이 너무 심해서 테이블이 정말 완벽하지 않다면 사용하기 힘들었고... 게다가 데이터를 'DirectQuery' 방식으로(쿼리로) 조회에오는 경우는 엑셀을 넣어 돌리거나 데이터 가져오기 모드보다 제약이 더욱 심했다.

 

그 갈증을 해소해줄 만한게 M formula(M 수식)!!! 드디어 찾았다 ㅠㅠ

문제는 쿼리 편집기에서 자동완성도, 도움말도, 교정도 전혀 안 해주지만;;; 있는게 어딘지...

 

1. 엑셀처럼 =를 넣어 시작한다. (=를 안 넣으면 그냥 문자열로 인식한다. 엑셀처럼...)

M Language Let - PowerQuery M | Microsoft Docs

 

M Language Let - PowerQuery M

Describes using the let expression in the Power Query M formula language

docs.microsoft.com

=
let  
    Source = Text.Proper("hello world")  
in  
    Source

 let으로 문장을 선언하고 in으로 결과를 출력한다.

즉, let에서 코딩하고 in으로 print를 한다???

 

2. 변수 사용 및 계산하기

=
let     x = 1 + 1,
        y = 2 + 2,     
        z = y + 1 
in
        x + y + z

 

위 함수는 let, in 대신 [ ] [ ] 를 사용할 수도 있다.

=
[     x = 1 + 1,
      y = 2 + 2,
      z = y + 1,
      result = x + y + z 
][result]

 

3. 리스트 사용하기

목록 함수 - PowerQuery M | Microsoft Docs

 

목록 함수 - PowerQuery M

목록 함수List functions 이 문서의 내용 --> 이 함수는 목록 값을 만들고 조작합니다.These functions create and manipulate list values. 정보Information 함수Function 설명Description List.CountList.Count 목록의 항목 수를

docs.microsoft.com

리스트를 사용할 수 있다!!

그 중 리스트에서 Distinct 함수를 사용하는 예제다.

= List.Distinct({1, 1, 2, 3, 3, 3})

애로우 함수, 애로우 펑션, 화살표 함수, stringbuilder, strinbuffer, scanner, 스트링빌더, 스트링버퍼, 스캐너

4. Arrow function & Scanner (함수선언 및 사용자 값 입력 받기)

=
let  
    MyFunction = (parameter1, parameter2) => (parameter1 + parameter2) / 2  
in  
    MyFunction

이런 것도 된다!!!

21, 53을 넣고 '호출'을 누르면

참고로 '쿼리1'은 이름을 변경하지 않아서 저렇게 나오는거고, 이름을 바꿀 수도 있다.

 

이외에도 다양한 M formula가 있다. 개인적으로 DAX보다 유용한 것 같다.

 

참고 : '측정값'에서 테이블과 컬럼을 참조할 때는(Power BI에서 테이블은 쿼리, 컬럼은 필드로 부른다.) '테이블'[컬럼]의 형태를 사용했으나 M formula에서는 테이블에 ' '를 사용하지 않는다.

 

Tag. power bi m function, power bi m 공식, power bi m공식, power bi m formula, power bi 포뮬라, powerbi 포뮬라, 파워비아이 포뮬라, 파워비아이 m 포뮬라, power bi m 포뮬라, power bi m 포뮬라, 포뮬러

+ Recent posts