🚀 일잘러의 도구함

구글 스프레드시트 쿼리(QUERY) 함수 기초: 엑셀 피벗보다 10배 빠른 조건별 데이터 추출

아둥 2026. 6. 12. 09:00
SMALL

스타트업이나 IT 기업, 제휴 마케팅 현업에서 근무하는 기획자라면 엑셀보다 구글 스프레드시트를 협업 도구로 더 자주 마주하게 됩니다.

실시간으로 수많은 유입 경로와 실적 데이터가 쌓이는 시트 안에서, 원하는 조건의 데이터만 따로 발라내어 보고서를 만드는 일은 매일 반복되는 일상입니다.

보통은 FILTER 기능을 쓰거나 마우스로 드래그하여 피벗 테이블을 만들곤 하지만, 데이터 양이 조금만 많아지면 시트 전체가 버벅거리거나 수식이 꼬여 화면이 멈추기 일쑤입니다.

제 경험상, 구글 스프레드시트의 숨겨진 꽃이라 불리는 'QUERY(쿼리) 함수' 딱 하나만 제대로 다룰 줄 알면 이런 노가다성 작업이 완전히 사라집니다.

마치 데이터베이스(DB) 시스템을 시트 안에 그대로 이식한 것처럼, 단 한 줄의 문장으로 수만 건의 로우 데이터 중 알맹이만 번개 같은 속도로 추출할 수 있습니다.

오늘은 복잡한 SQL 프로그램 설치 없이, 실무에서 엑셀 피벗 테이블보다 10배는 강력한 성능을 발휘하는 쿼리 함수 기초 활용법을 공유합니다.


🔍 왜 FILTER 함수 대신 QUERY 함수인가?

많은 직장인들이 구글 시트에서 데이터를 거를 때 디폴트로 FILTER 함수를 떠올립니다. 하지만 FILTER 함수는 정렬(SORT)이나 특정 열(Column)만 골라서 가져오는 가공 작업을 하려면 다른 함수들을 중첩해서 수식을 길게 복잡하게 짜야 하는 치명적인 단점이 있습니다.

반면 QUERY 함수는 단 하나의 수식 안에서 데이터 필터링, 열 선택, 정렬, 그리고 심지어 항목별 개수 카운트(COUNT)까지 한 번에 끝낼 수 있는 엄청난 확장성을 지니고 있습니다.

비교 항목 기존 FILTER 및 피벗 방식 QUERY 함수 활용 방식
수식의 간결함 SORT, FILTER 등을 중첩하여 복잡함 단 하나의 QUERY 수식 문장으로 해결
데이터 추출 속도 로우 데이터 증가 시 연산 속도 급격히 저하 웹 기반 DB 엔진 활용으로 대용량도 쾌적함
유연성 및 자동화 새 데이터 유입 시 영역 재지정 필요 열 전체를 범위로 지정하여 무한 자동 갱신

실제로 지난주 유입된 광고 제휴 채널별 데이터 8만 건을 QUERY 함수로 조건별 분석판을 짜보았더니, 단 3초 만에 결과 대시보드가 완성되어 퇴근을 대폭 앞당겼습니다.

수식을 여기저기 복사해서 붙여넣을 필요 없이 A1 셀 딱 한 곳에만 제대로 된 쿼리문을 작성해 두면 끝나는 혁신적인 방식입니다.


⚡ 실무에서 바로 쓰는 QUERY 함수 기본 문법과 SELECT 절

QUERY 함수의 기본 구조는 매우 직관적입니다. `=QUERY(전체데이터범위, "SQL 명령어 조합", [헤더행수])` 형태로 작성됩니다.

여기서 핵심은 따옴표 안에 들어가는 SQL 명령어 체계인데, 원하는 열만 골라서 가져오고 싶을 때는 SELECT 절을 가장 먼저 사용합니다.

  • SELECT * : 지정한 범위의 모든 열을 조건 없이 그대로 가져오겠다는 가장 단순한 명령어입니다.
  • SELECT A, C, F : 전체 테이블 중에서 A열(가맹점명), C열(주문금액), F열(정산일자)만 순서대로 골라서 뽑아내겠다는 의미입니다.
  • 대소문자 구분 필수: 함수 안의 SQL 명령어(SELECT, WHERE 등)는 반드시 대문자로 작성해야 에러가 나지 않습니다.

현업에서 무조건 마주하는 '지저분한 로우 데이터 표'에서 내가 보고서에 쓸 핵심 컬럼 3~4개만 추려낼 때, 이 SELECT 문장만큼 깔끔한 해결책은 없습니다.

마우스로 불필요한 열을 하나씩 숨기거나 지우는 소모적인 행동을 완벽하게 대체할 수 있는 실무 스킬입니다.


📊 WHERE 절을 활용한 날짜 및 텍스트 조건 필터링

특정 열을 골라냈다면, 이제는 "이번 달 실적만", 혹은 "특정 제휴사 데이터만" 잘라내는 필터링 작업을 거쳐야 합니다. 이때 사용하는 것이 바로 WHERE 절입니다.

텍스트 조건을 걸 때는 작은따옴표(' ')를 사용하고, 숫자나 날짜 조건을 걸 때는 데이터 형식에 맞게 규칙을 부여하면 됩니다.

"구글 시트 쿼리 함수에서 날짜를 필터링할 때는 반드시 `WHERE A >= date '2026-06-01'` 과 같이 'date' 키워드를 명시해 주어야 텍스트가 아닌 날짜형으로 정확히 인식합니다."
  1. WHERE B = '대리점A': B열의 값 중 정확히 '대리점A'라는 텍스트를 가진 행들만 추출합니다.
  2. WHERE C >= 1000000: C열의 주문 금액이 100만 원 이상인 우수 거래처 데이터만 골라냅니다.
  3. WHERE D IS NOT NULL: D열에 빈칸(공백)이 없는, 즉 결제가 완료되거나 데이터가 누락되지 않은 정상 건만 필터링합니다.

날짜와 텍스트 조건을 AND나 OR로 결합하면 엑셀의 다중 필터보다 훨씬 정교하고 강력한 검색 엔진을 시트 내에 구현할 수 있게 됩니다.


🎯 흔한 수식 에러와 퇴근을 앞당기는 실전 액션

QUERY 함수를 처음 쓰는 직장인들이 가장 많이 겪는 치명적인 에러는 바로 #VALUE! (데이터 유형 불일치) 오류입니다.

구글 시트의 쿼리 엔진은 하나의 열(Column)에 숫자와 텍스트가 무분별하게 섞여 있으면, 더 많은 비중을 차지하는 데이터 유형을 디폴트로 잡고 나머지 유형은 전부 공백(Null) 처리해 버리는 특성이 있습니다.

자주 발생하는 에러 원인 분석 가장 확실한 해결책
#VALUE! 오류 발생 한 열에 숫자와 문자 데이터가 혼용됨 원본 열의 형식을 '텍스트'로 통일하거나 공백 제거
#NAME? 오류 발생 SELECT 등 명령어 소문자 입력 또는 오타 수식 안의 SQL 구문을 전부 대문자로 수정

이러한 특성만 미리 파악하고 데이터 원본의 포맷을 깔끔하게 정돈해 두면, 어떤 대용량 파일이 유입되어도 흔들리지 않는 자동화 보고서 판넬을 유지할 수 있습니다.

[오늘의 실전 액션 가이드]
지금 회사에서 쓰시는 구글 스프레드시트 아무거나 하나를 열고 빈 영역에 `=QUERY(A:E, "SELECT A, B WHERE C > 0")` 이라고 가볍게 입력해 보세요.
엔터를 누르는 순간, 지저분했던 원본 표에서 원하는 알맹이만 마법처럼 깔끔하게 복사되어 정렬되는 것을 보실 수 있습니다.
이 수식 한 줄의 원리를 이해하는 것이, 여러분의 업무 일과를 자동화 시스템으로 전환하는 위대한 첫걸음이 될 것입니다.