구글 스프레드시트에서 <QUERY 함수>를 통해 SQL 쿼리문과 같은 기능을 사용할 수 있다.
query 함수는 아래와 같이 사용.
= query(사용할 데이터 범위 설정, 쿼리문)
필자는 SQL문을 어디에 사용했느냐,
매주 상품별로 발주를 넣는데, 100개가 넘는 브랜드 중 팀원마다 맡은 브랜드가 있다.
각 팀원별로 맡은 브랜드만 확인하면 되니까 Query 함수를 써서 해당 브랜드만 각 담당자별 시트탭에 데이터를 뿌려줬다.
↓실제 시트 화면↓
우선 상품별로 발주가 필요한지 여부를 체크해 주는 '상태부여' 탭을 만들고
(한달 동안 판매된 수량과 재고 수량 비교하여 발주할 수량 정해줌)
각 담당자들 탭에 query 문으로 데이터 뿌려주기
=QUERY('상태 부여'!A2:I,"select * where B='에뛰드 하우스' or B='잇츠스킨' or B='미샤' or B='더페이스샵' order by B ")
이렇게 사용했는데 이 의미는
= QUERY(사용할 데이터 범위 설정, 쿼리문)
= QUERY('상태 부여'시트탭에 A2:I 범위에서 데이터 다 가져올건데, 조건이 있어!! B 열에 있는 단어가 '에뛰드 하우스' 이거나 '잇츠스킨' 이거나 '미샤' 이거나 '더페이스샵' 인것만 가져와줘 . 그리고 B열 기준 오름차순으로 정렬해줘. )
이런 의미다.
만약, 조건문에 포함해야할 단어가 100개중에 98 개면
위에 쿼리문 처럼 or 로 98개를 연결시키는 것보다는
나머지 2개의 단어를 제외 시키는게 낫다.
아래처럼.
=QUERY('상태 부여'!A2:I,"select * where A!='' and B!='토니모리' and B!='이니스프리' order by B")
이렇게 쓴 것의 의미는
= QUERY('상태 부여'시트탭에 A2:I 범위에서 데이터 다 가져올건데, 조건이 있어!! A열은 빈칸이면 안되고, B열에 있는 단어가 '토니모리' 이면 안되고, '이니스프리' 이면 안돼. 그리고 B열 기준 오름차순으로 정렬해줘. )
이런 의미다.
참고1 ) != 같지않다는 의미
'' 작은따옴표 2개 쓰면 빈칸을 의미
select * 모두 선택한다는 의미
where 조건문의 시작
order by 오름차순 정렬
order by desc 내림차순 정렬
참고2 ) where 조건문 에서 어떤 특정한 셀과 같다는 조건을 걸고 싶을때
=QUERY (A132:L, " select C,D,E,F,G,H,I,J,K,L where A = ' " &C1&" ' AND B = ' " &C16&" ' " , 1)
셀과 비교할 때 셀 양옆에 & 앰퍼샌드를 붙여주고 큰따옴표로 감싸주고 그걸 또 작은 따옴표로 감싸줘야 함
where 조건문 안에서 특정 셀과 같다...를 표현하는 방법 매우 복잡하지만 알아두면 유용!
'IT > 엑셀, 구글스프레드시트' 카테고리의 다른 글
[엑셀, 구글 스프레드시트] 주민등록번호 뒷자리 가리는 방법 (left, rept, concat) (0) | 2021.08.31 |
---|---|
[구글 스프레드시트] 두 데이터 상관 분석 PEARSON, CORREL (0) | 2021.08.30 |
[구글 스프레드시트] 중복 제거 함수 unique (0) | 2021.04.29 |
[구글 스프레드시트] 'if' 함수 사용법 / if 중첩 (0) | 2021.02.26 |
[구글 스프레드시트] 공백 제거 3가지 방법 (trim, mid, 값바꾸기) (2) | 2021.02.26 |
댓글