본문 바로가기
IT 정보

구글 시트 QUERY 함수 예제 조건 설정 완벽 가이드

by 스마트 생활꾼 2024. 11. 10.

 

1. QUERY 함수 언제 쓰나요?

안녕하세요! 오늘은 구글 시트의 데이터 분석 강자인 QUERY 함수에 대해 알아볼까 합니다.

실무에서 데이터 분석을 하다 보면 특정 조건의 데이터만 추출해야 할 때가 많은데요. 이럴 때 가장 유용하게 사용할 수 있는 것이 바로 QUERY 함수입니다.

 

QUERY 함수의 기본 문법은 다음과 같습니다:

 

QUERY(data, query, [headers])

 

 

이 함수의 각 매개변수를 자세히 살펴보겠습니다:

  • data: 분석하고자 하는 데이터 범위를 지정합니다. 실제 현업에서는 A2:F100처럼 넓은 범위를 지정하는 경우가 많거든요.
  • query: SQL과 유사한 쿼리문을 작성하는 부분입니다. 처음에는 낯설 수 있지만, 기본 문법만 익히면 생각보다 쉽습니다.
  • headers: 선택사항으로, 데이터의 제목 행 수를 지정합니다. 보통은 생략해도 무방한데, 데이터 구조가 복잡할 때는 꼭 필요하답니다.

실무에서 자주 마주치는 상황을 예로 들어보겠습니다. 영업팀 실적 데이터에서 특정 지역의 실적만 뽑아보거나, 목표액 달성 건만 필터링할 때 이 함수가 매우 유용하게 사용됩니다.

 

한 가지 팁을 더 드리자면, 처음에는 단순한 필터링부터 시작하시는 게 좋습니다. 너무 복잡한 쿼리를 한번에 작성하려다 보면 실수하기 쉽거든요.

 

이렇게 기초부터 차근차근 배워가시면, 나중에는 복잡한 데이터 분석도 어렵지 않게 처리하실 수 있을 거예요. QUERY 함수는 정말 강력한 도구니까요!

 

 

2. 기본 예제

실무에서 데이터를 다루다 보면 특정 열의 정보만 필요한 경우가 참 많은데요. 이럴 때 QUERY 함수를 활용하면 아주 편리합니다.

 

가장 기본적인 사용법은 다음과 같습니다:

 

=QUERY(A2:C10, "SELECT B, C")

 

 

이렇게 하면 B열과 C열의 데이터만 깔끔하게 추출할 수 있습니다. 실무에서는 이런 기능이 정말 유용하거든요.

예를 들어 부서별 실적만 확인하고 싶을 때는 B열(부서)과 C열(실적)만 선택하면 되는데, 이때 "SELECT B, C" 구문을 사용하면 됩니다. 이렇게 하면 이름 정보는 제외하고, 부서와 실적 정보만 깔끔하게 볼 수 있죠.

 

단순해 보이지만, 이런 기본적인 데이터 추출 기능이 실무에서는 매우 중요합니다. 더 복잡한 분석도 결국 이런 기본 기능을 응용하는 것이니까요!

 

 

3. 조건 설정 예제

3.1 WHERE 조건으로 데이터 필터링하기

실무에서 작업하다 보면 특정 조건에 맞는 데이터만 추출해야 할 때가 정말 많습니다. 이럴 때 WHERE 절을 활용하면 아주 편리한데요.

 

기본적인 WHERE 절 사용법은 이렇습니다:

 

=QUERY(A2:C10, "SELECT * WHERE B > 100")

 

 

이렇게 작성하면 B열의 값이 100보다 큰 데이터만 골라서 보여줍니다. 실제 업무 현장에서는 매출액이나 실적이 특정 기준을 넘는 경우를 찾을 때 자주 활용되죠.

 

숫자 데이터뿐만 아니라 문자열을 기준으로도 필터링이 가능합니다. 예를 들어 특정 지역의 데이터만 보고 싶을 때는 이렇게 작성하면 되는데요.

 

=QUERY(A2:C10, "SELECT * WHERE C = '서울'")

 

실무에서 자주 마주치는 상황을 예로 들어보자면, 영업팀에서 특정 지역의 실적만 확인하고 싶을 때 이런 방식으로 데이터를 추출하곤 합니다.

 

3.2 여러 조건 설정 (AND, OR)

데이터를 분석할 때 하나의 조건만으로는 부족한 경우가 많은데요. 이럴 때 AND와 OR 연산자를 활용하면 아주 편리합니다.

AND를 사용하면 모든 조건을 만족하는 데이터만 추출할 수 있습니다.

 

 

=QUERY(A2:C10, "SELECT * WHERE B > 50 AND C = '서울'")

 

실제 업무에서는 예를 들어 "서울 지역의 매출액이 50만원 이상인 거래"처럼 두 가지 조건을 동시에 만족하는 경우를 찾을 때 이렇게 사용하죠.

 

반면에 OR를 사용하면 두 조건 중 하나만 만족해도 됩니다.

 

=QUERY(A2:C10, "SELECT * WHERE B > 50 OR C = '부산'")

 

이건 "매출액이 50만원 이상이거나, 부산 지역의 모든 거래"를 찾고 싶을 때 활용할 수 있습니다.

실무에서는 이런 복합 조건을 자주 사용하게 되는데요. 처음에는 조건을 하나씩 테스트해보면서 익히시면 좋습니다. 실수를 방지할 수 있거든요!

 

3.3 정렬하기 (ORDER BY)

매출액 순으로 정리한다거나, 실적 순위를 매길 때 이 기능이 매우 유용합니다.
기본적인 정렬은 ORDER BY를 사용하면 되는데요

 

=QUERY(A2:C10, "SELECT * ORDER BY B ASC")

여기서 ASC는 오름차순을 의미합니다. 숫자라면 작은 수에서 큰 수로, 문자라면 가나다 순으로 정렬되죠.

반대로 내림차순 정렬을 원한다면.

 

=QUERY(A2:C10, "SELECT * ORDER BY B DESC")

 

이렇게 DESC를 사용하면 됩니다. 큰 수에서 작은 수로, 또는 문자의 경우 역순으로 정렬되는 거죠.

 

3.4 특정 열만 추출하고 정렬하기

전체 데이터가 아닌 특정 항목만 정렬해서 보고 싶을 때가 많은데요. 이럴 때는 SELECT와 ORDER BY를 함께 사용하면 됩니다.

기본 사용법은 이렇습니다.

 

=QUERY(A2:C10, "SELECT B ORDER BY B DESC")

 

 

4. QUERY 함수 고급 사용법

4.1 GROUP BY로 데이터 그룹화

부서별 실적 합계나 지역별 매출 총액처럼 데이터를 그룹으로 묶어서 보고 싶을 때가 많은데요. 이럴 때 GROUP BY를 활용하면 아주 편리합니다.

기본 사용법은 이렇습니다.



=QUERY(A2:C10, "SELECT C, SUM(B) GROUP BY C")

위 예시에서는 지역(C열)별로 매출액(B열)의 합계를 계산했습니다. 서울 지역의 경우 850과 780의 합인 1,630이 표시되는 것을 볼 수 있죠.


실제 현업에서는 예를 들어 영업팀별 실적 합계를 낼 때 이런 식으로 활용하곤 하는데요. 팀별로 얼마나 성과를 냈는지 한눈에 파악할 수 있죠.

 

4.2 LABEL로 출력 열 이름 지정하기

SUM(B)처럼 기계적인 열 이름보다는 '총합', '평균' 같은 알기 쉬운 이름으로 바꾸고 싶을 때가 많은데요. 이럴 때 LABEL을 활용하면 됩니다.

=QUERY(A2:C10, "SELECT SUM(B) LABEL SUM(B) '총합'")

 

 

위 예시에서는 실적(B열)의 합계를 구하고, 그 결과를 '총합'이라는 이름으로 표시했습니다. 이렇게 하면 보고서를 작성할 때 훨씬 보기 좋은 결과물을 만들 수 있죠.

 

 

5. 실전 예제 (재고 관리 데이터 분석)

재고 관리를 하다 보면 부족한 재고를 파악하는 게 정말 중요한데요. QUERY 함수를 활용하면 이런 작업을 아주 효율적으로 처리할 수 있습니다.



=QUERY(A2:D20, "SELECT A, B, D WHERE D <= 50 ORDER BY A ASC")

위 예시에서는 재고가 50개 이하인 제품들만 추출하여 제품명 순으로 정렬했습니다. 노트북과 마우스가 재고 부족 상태로 나타나네요. 이런 식으로 재고 관리를 효율적으로 할 수 있습니다.


실제 현업에서는 이렇게 재고가 특정 수준 이하로 떨어진 제품들을 미리 파악해서 재주문 시기를 놓치지 않도록 하는 것이 중요하거든요.

 

 

6. QUERY 함수 사용 시 유의사항

QUERY 함수를 활용하다 보면 몇 가지 실수하기 쉬운 부분들이 있는데요. 이런 부분들을 미리 알아두면 많은 도움이 됩니다.

 

첫째, 데이터 범위 설정이 정말 중요합니다. 실제 업무 현장에서는 데이터가 계속 추가되는 경우가 많은데요. 이럴 때는 동적으로 범위를 설정해야 나중에 문제가 생기지 않습니다.

 

둘째, SQL과 비슷하지만 약간의 차이가 있다는 점을 꼭 기억해야 합니다. 특히 날짜 데이터를 다룰 때는 'date YYYY-MM-DD' 형식을 꼭 지켜야 하거든요.

 

마지막으로 문자열 비교할 때는 대소문자를 정확히 구분해야 합니다. '서울'과 '서울시'는 다른 값으로 인식되니 주의가 필요하죠.

 

 

위 예시를 보시면, '서울'과 '서울시'는 다르게 처리되고, 날짜 형식도 특별한 방식으로 지정해야 하는 것을 확인할 수 있습니다. 이런 세세한 부분들을 잘 기억해두시면 실수를 줄일 수 있을 거예요!