Google Sheets QUERY Function Tutorial:PART1
Reference
- 유튜브, 채널 ‘Learn Google Spreadsheets’
Intro
SQL문과 유사한 구글의 QUERY문을 학습해보자. 데이터는 캐글에서 얻은 타이타닉 데이터를 기준으로 진행하겠다.
SELECT 문
=query(test!A1:K419,"select C, D, E, I",1) |
query의 첫 번째 파라미터에는 데이터의 모든 행렬을 넣어주는데 이때 header(Passengerid, Name, Sex,…)까지 모두 넣어준다. 헤더 위치 값 설정은 바로 뒤에 설정해주니 계속 해보자.
그 다음 두 번째 파라미터에는 명령어가 들어간다. SQL문과 유사하다. SELECT C, D, E, I는 말 그대로 4개의 열을 가져와라는 의미다.
마지막 세 번째 파라미터에는 헤더 행값을 입력해주는데 위 기준에는 헤더 row가 1개이므로 1로 넣어주었다.
> 결과
위와 같은 데이터들이 나열된다.
> 명령문을 따로 셀에 기제한 내용을 가져오기
QUERY문 2번째 파라미터에 명령문을 직접 적지 않고 A1셀의 명령문을 가져와도 수행이 가능하다.
> 소문자로 데이터 불러오기
단, 소문자로 행열을 지정할 경우 오류가나니 주의하자. MYSQL도 원칙상으로는 대문자로 명령문을 입력하는 것이 옳다고 알고있는데 구글시트가 참 유사한 점이 많다.
SELECT WHERE 조건문
> SELECT 명령어에 WHERE 조건문을 추가하기
SELECT C, D, E, I를 하되 I행렬(기준 데이터 시트의 I열인 FARE 정보 열)이 20 이상인 조건(WHERE)으로 데이터를 가져오라고 한 명령어다. 결과 시트의 E열의 FARE 데이터를 보면 모두 20 이상인 수의 데이터만 수집된 것을 알 수 있다.
> 조건이 두 개인 경우
조건(WHERE)이 2개인 경우는 AND로 묶어준다. 이번엔 성별 컬럼 D에서 남성(male)의 조건을 추가했더니, 결과 시트에 남성 데이터만 결과가 나오는 것을 알 수 있다.
> 조건 세부 지정(조건 1-1 or 조건 1-2) AND 조건 3
성별 컬럼(D)에서 여성인 조건과 더불어 Embarked의 Column에서 Q뿐만 아니라 S도 함께 보고싶다면 위와 같이 (A OR B) AND C 조건문으로 보면 된다. 물론 필요에 따라 자유롭게 응용해서 쓰면 된다. 특정 조건(C)하에 두 변수(A, B)를 비교하기가 용이하다.
ORDER BY
> ORDER BY 활용해 오름차순 적용하기
데이터 시트의 컬럼 C(NAME)에 ORDER BY를 적용하면 오름차순으로 결과 시트에 데이터가 나타나는 것을 알 수 있다.
> DESC 내림차순 정렬은 DESC를 붙여주기만 하면 된다.
LIMIT
> 데이터가 너무 많아 일부 데이터만 보고싶다면 LIMIT 명령어를 사용하면 된다
하지만 지금은 내림차순 기준으로 되어있으니 오름차순으로 바꿔주자.
> 오름차순을 위해선 그냥 내림차순 명령어 DESC 를 빼주기만 하면 된다
LIKE
LIKE는 조건문에서 특정 문자열이 있는 조건을 찾을 때 활용할 수 있는 명령어다.
위 명령어에서 LIKE ‘%John%’은 ‘John’앞뒤로 문자가 있는(%) 조건이 추가되었다. 이름에 ‘John’으로 시작하고 끝나는 이름이 없고 잘 보면 ‘...Mr. John…’, ‘Mrs. John…’과 같이 ‘John’ 앞뒤로 띄어쓰기가 있고 다른 부가적인 이름들이 나열되는 것을 알 수 있다. 컴퓨터는 빈칸과 다른 문자까지도 동일한 단어로 인식하기 때문에 정규표현문법인 ‘%’를 활용해서 컴퓨터가 알아먹게 명령어를 입력해주어야 한다.
정규표현식 관련 문법 정리한 글은 아래를 참고하면 좋겠다.
> 정규표현식 응용
정규표현식을 응용하면 이런 것도 찾을 수 있다. PasengerId 중 10의 자리수가 9인 ID만 추출할 수 있다면 어떻게 해야할까? LIKE의 조건에 언더바(_)를 빈 문자로 채우고 꼭 들어가야 할 9를 두 번째 자리수에 채워준다. 여기서 ‘_9_’는 ‘어떤 문자 1개 + 숫자 9 + 어떤 문자 1개' 조합의 조건을 가지게 된다.
위 정규표현식은 상품 정보를 다룰 때 유용하게 쓸 수 있다. 상품의 SKU넘버를 정의하거나 인식하는 함수를 만들 수 있기 때문이다.
'Research > Google products' 카테고리의 다른 글
google sheet_ VLOOKUP (0) | 2021.12.28 |
---|---|
google sheet_ COUNTIF 활용하기 (0) | 2021.12.28 |
google sheet_자동 채워넣기 (0) | 2021.12.28 |
구글_앱시트(AppSheet) 소개 (0) | 2021.12.02 |
Google Sheets_다른 셀 기반에 기반한 조건문으로 셀 색상 지정하기 (1) | 2021.10.11 |
댓글