구글 시트 QUERY 함수 활용법과 실전 예제
구글 시트 QUERY 함수의 이해와 활용
데이터를 다루는 업무가 점점 더 많아지면서, 원본 데이터를 효율적으로 가공할 필요성이 커지고 있습니다. 이럴 때 구글 스프레드시트의 QUERY 함수가 큰 도움이 됩니다. QUERY 함수는 다양한 방식으로 데이터를 분석하고 필터링할 수 있는 기능을 제공합니다. 이를 통해 원하는 정보를 쉽게 추출할 수 있습니다.

QUERY 함수란 무엇인가?
QUERY 함수는 SQL과 유사한 쿼리 언어를 사용하여 데이터베이스처럼 구글 시트의 데이터를 검색하고 조작할 수 있게 해주는 기능입니다. 기본적인 형식은 =QUERY(데이터, 쿼리, 헤더)로 구성되어 있습니다. 여기서 ‘데이터’는 검색할 데이터 범위를 지정하고, ‘쿼리’는 데이터를 필터링할 조건을, ‘헤더’는 데이터의 첫 번째 줄이 제목인지 여부를 나타냅니다.
간단한 QUERY 함수 예제
예를 들어, 학생의 성적 데이터를 가진 범위가 I2:O6이라고 가정해보겠습니다. 이 경우 특정 학생의 데이터를 가져오기 위해 다음과 같이 QUERY 함수를 사용할 수 있습니다:
=QUERY(I2:O6, "SELECT * WHERE J = '김민서'", 0)
위의 예에서 I2:O6 범위에서 J열의 값이 ‘김민서’인 모든 행을 반환하라는 의미입니다. ‘SELECT’ 문을 통해 어떤 데이터를 선택할 것인지 정의하며, ‘WHERE’ 조건을 사용하여 특정 조건을 만족하는 데이터만 필터링합니다.
A셀 참조를 통한 동적 데이터 추출
특정 학생의 이름을 계속해서 바꿔가며 확인하고 싶다면, A셀을 참조하여 이름을 입력하게 할 수 있습니다. 이를 위해 다음과 같은 함수를 사용할 수 있습니다:
=QUERY(I2:O6, "SELECT * WHERE J = '" & A8 & "'", 0)
이 경우 A8셀에 입력된 값에 따라 동적으로 데이터가 변하게 됩니다. 쌍따옴표와 연결 연산자 ‘&’에 유의해야 하며, 문자열과 셀 참조를 혼합할 수 있습니다.
조건을 추가한 QUERY 함수 사용법
이제 여러 조건을 추가하여 데이터를 필터링하는 방법을 살펴보겠습니다. 예를 들어, 문과 학생 중에서 특정 과목 점수가 90점 이상인 학생을 찾고자 할 때 다음과 같은 쿼리를 사용할 수 있습니다:
=QUERY(I2:O6, "SELECT * WHERE O = '문과' AND N > 90", 1)
이렇게 ‘AND’를 사용해 다수의 조건을 결합하면, 더욱 세밀화된 데이터 추출이 가능합니다. 반대로 ‘OR’ 조건을 사용하면 최소한 하나의 조건이 만족하는 경우에 해당하는 데이터를 추출할 수 있습니다.

더욱 복잡한 조건 사용 예
다양한 조건을 결합할 수 있으며 예를 들어, 다음과 같은 쿼리를 사용할 수 있습니다:
=QUERY(I2:O6, "SELECT * WHERE (M > 15 AND O = '문과') OR (M > 10 AND O = '이과')", 1)
이 쿼리는 문과 학생 중 수행평가 점수가 15점 이상이거나, 이과 학생 중 수행평가가 10점 이상인 데이터를 모두 가져옵니다.
정렬 및 집계 기능 활용하기
QUERY 함수는 데이터 정렬과 집계 기능도 지원합니다. 예를 들어, 특정 조건에 해당하는 학생들의 점수를 내림차순으로 정렬하고 싶을 경우 다음과 같은 쿼리를 사용할 수 있습니다:
=QUERY(I2:O6, "SELECT J, N WHERE O = '문과' ORDER BY N DESC", 1)
이 쿼리는 문과 학생들의 이름과 점수를 가져오면서 점수를 기준으로 내림차순으로 정렬해 반환합니다.
복합적인 데이터 활용하기
QUERY 함수를 활용하면 단순한 데이터 추출을 넘어서 여러 시트의 데이터를 병합할 수 있습니다. 예를 들어, IMPORTRANGE 함수와 결합하여 다른 스프레드시트의 데이터를 가져올 수 있으며, 이후 QUERY 함수를 통해 필요한 조건을 적용할 수 있습니다.
=QUERY(IMPORTRANGE("스프레드시트 URL", "시트명!A1:C"), "SELECT * WHERE Col1 = '조건'", 1)
이렇게 하면 원본 데이터의 변화가 있을 때마다 자동으로 최신 데이터를 반영할 수 있어 효율적인 데이터 관리가 가능합니다.
사용 시 주의사항
- 쿼리 문자열은 항상 큰따옴표로 묶어야 합니다.
- 조건문에서 사용되는 문자열은 작은따옴표로 감싸야 합니다.
- AND와 OR 조건을 사용할 경우 각 조건 간의 정확한 논리적 관계를 고려해야 합니다.

결론
구글 시트의 QUERY 함수는 데이터를 효율적으로 추출하고 가공할 수 있는 매우 유용한 도구입니다. 다양한 조건을 조합하여 원하는 데이터를 정확히 얻을 수 있으며, 다른 함수와 결합하여 활용 가능성이 무궁무진합니다. 이 기능을 잘 활용하면 데이터 분석 업무에서 효율성을 높일 수 있을 것입니다. 실전 예제를 통해 더욱 다양한 활용법을 익혀보시기 바랍니다.
자주 찾으시는 질문 FAQ
QUERY 함수란 무엇인가요?
QUERY 함수는 구글 시트에서 관계형 데이터베이스처럼 데이터를 검색하고 가공할 수 있도록 지원하는 기능입니다. SQL과 유사한 쿼리 언어를 사용해 원하는 데이터를 쉽게 추출할 수 있습니다.
QUERY 함수를 어떻게 사용하나요?
QUERY 함수는 기본적으로 =QUERY(데이터, 쿼리, 헤더) 형식을 따릅니다. 여기서 ‘데이터’는 검색할 범위, ‘쿼리’는 데이터를 필터링할 조건, 그리고 ‘헤더’는 데이터의 제목 여부를 나타냅니다.
특정 값을 기준으로 데이터를 추출하는 방법은?
특정 값을 기준으로 데이터를 가져오려면 ‘WHERE’ 조건을 사용할 수 있습니다. 예를 들어, 특정 학생의 데이터를 원한다면 =QUERY(I2:O6, "SELECT * WHERE J = '학생이름'", 0)
와 같은 형식을 사용합니다.
여러 조건을 추가해 데이터를 필터링할 수 있나요?
네, 여러 조건을 결합하여 데이터를 더욱 세밀하게 필터링할 수 있습니다. ‘AND’ 및 ‘OR’ 조건을 사용하여 요구 사항에 맞는 데이터를 선택할 수 있습니다.
QUERY 함수의 정렬 및 집계 기능은 무엇인가요?
QUERY 함수는 데이터를 정렬하고 집계하는 기능도 제공합니다. 예를 들어, 특정 조건에 따라 데이터를 정렬하거나 그룹화하여 요약할 수 있습니다.