[ 파워쿼리 ] 두 가지 조건을 만족하는 값 구하기 ( vs. vlookup )

2024. 11. 19. 07:18Power BI/파워 쿼리 ( Power Qeury )

728x90
반응형

두 가지 조건을 만족하는 값을 구해 보는 것을 진행해 보도록 하겠습니다.

엑셀의 꽃이 vlookup이라며 파워쿼리의 꽃은 병합( join )이라고 이야기드린 적도 있습니다.

그럼 엑셀로 예전에 했던 두 가지 조건을 만족하는 값을 구하는 방법을 파워쿼리로 해 보도록 하겠습니다.


 

아래와 같은 데이터를 준비해 보도록 하겠습니다.

data 테이블 target 테이블

 

data 테이블에서 target값을 만족하는 값을 찾아 보도록 하겠습니다.

두 개의 테이블을 각각 파워쿼리에 업로드해 줍니다.

data 테이블과 target 테이블이 쿼리로 업로드된 것을 볼 수 있습니다.

 

이 값을 구하기 위해서 사용할 방법은 쿼리 병합입니다.

우선 병합을 모르시면 아래의 글을 먼저 읽어보시고 보시면 더 이해가 잘 되실 것이라고 생각합니다

 

[ 파워쿼리 ] 쿼리 병합 ( Nested Join )

파워쿼리의 꽃 쿼리 병합에 대해서 알아보겠습니다.데이터 분석에서 가장 중요한 것은 다수의 데이터를 결합하는 것입니다.엑셀 vlookup과 동일한 기능이지만 더 Powerful한 방법결합하는 것도 연

sunconnector.tistory.com

 

반응형

data 테이블이 생성된 상태에서 쿼리 병합을 눌러 주도록 하겠습니다.

그리고 아래에서는 target 테이블을 선택해 줍니다.

파워쿼리 창에 올려 두었던 2개의 테이블이 생성되는 것을 볼 수 있습니다.

 

 

기존 쿼리 병합은 하나의 컬럼씩만 선택했지만 이번에는 두 개의 컬럼을 선택해 줍니다.

아래와 같이 각 컬럼 우측에 작은 숫자가 생성되는 것을 볼 수 있습니다.

그리고 마지막에 선택 영역은 첫 번째 테이블에서 1/14개의 테이블과 일치합니다. 라는 메시지가 나오는 것을 볼 수 있습니다.

확인을 눌러보도록 하겠습니다.

아래와 같이 대구분 "a" 값과 중구분 "마" 값을 만족하는 값에는 Table이 생성되는 것을 볼 수 있습니다.

 



VS. 대구분이 "a" 지만 중구분이 "마"값이 아닌 테이블은



다음과 같이 테이블이 비어 있는 것을 볼 수 있습니다. 값이 없기 때문입니다.


 

그럼 target 테이블에서 확장 버튼을 눌러보도록 하겠습니다.

아래와 같이 타켓값만 나오고 나머지는 null 값으로 반환되는 것을 볼 수 있습니다.

이제 대구분.1 컬럼에서 빈 항목 제거를 클릭해 주도록 하겠습니다. 

 

728x90

그럼 아래와 같은 같이 나오고 대구분.1과 중구분.1을 컬럼을 삭제 후 닫기 및 로드를 누르면  

 

아래의 초록색과 같이 결과가 나오는 것을 볼 수 있습니다.

 

그럼 이제 주황색 target 테이블에 대구분 "b"와 중구분 "나"를 입력 후 초록색 창에서 새로고침을 눌러 줍니다.

그럼 아래와 같이 초록색 결과 테이블 값이 업데이트되는 것을 볼 수 있습니다.

 

 

왜 그런지는 아래의 리스트 필터의 글을 참조해 주십시오. 왜 쿼리가 강력한지 알 수 있으실 것입니다.

 

[ 파워쿼리 ] 특정 항목의 합계 구하기 ( 리스트 필터링 )

파워쿼리를 이용한 특정 항목의 합계를 구해 보도록 하겠습니다.엑셀에서 구현하는 방법을 알아보기 위해서 간단한 예제를 먼저 들어보도록 하겠습니다.다음과 같은 테이블에서 k값의 합을 구

sunconnector.tistory.com


 

사실 쿼리에서 제일 중요한건 절차를 줄이는 것이 효율성을 올릴 수 있는 방법입니다.

아까의 작업과정을 좀 더 효율적으로 해 보도록 하겠습니다.

아래의 적용된 단계 병합된 쿼리를 더블 클릭해 보면 다음과 같이 아까 보았던 창이 뜨는 것을 볼 수 있습니다.

 

여기서 왼쪽 외부를 내부로 변경해 보도록 하겠습니다.

 

 

아래와 같이 일치하는 값만 출력되는 것을 볼 수 있습니다.

 

이제 확장된 target에서 우클릭 후 끝까지 삭제를 클릭해 줍니다.

 

그리고 바로 target 컬럼을 지워주면 원하는 결과가 나오는 것을 볼 수 있습니다.

 

2단계를 save할 수 있어 작업의 효율성이 더욱 향상되는 것을 확인할 있습니다.

728x90
반응형