본문 바로가기

Data Science

구글빅쿼리 유용한 문자 숫자 함수정리

구글빅쿼리 유용한 문자 숫자 함수정리

구글빅쿼리 유용한 문자 숫자 함수정리

안녕하세요.
요즘 구글 빅쿼리 사용 많이들 하시더라구요.
구글빅쿼리에서 사용 할 수 있는 유용한 문자 숫자 함수들에 대해서 정리를 해보겠습니다.

 

구글빅쿼리 문자함수 starts_with, ends_with

starts_with, ends_with 함수는 초성과 종성을 확인 해주는 문자 함수 입니다.
분석용으로 쓰이는 구글빅쿼리에서 많이 사용 되는 함수 입니다.

SELECT 
	STARTS_WITH('Hello', 'o') -- FALSE
	,STARTS_WITH('Hello', 'H') -- TRUE  
	,ENDS_WITH('Hello', 'o') -- TRUE
	,ENDS_WITH('Hello', 'H') -- FALSE

결과

 

 

 

구글빅쿼리 문자함수 strpos

strpos는 instr 함수와 비슷한 함수가 되겠죠.
위치를 찾아서 반환 해주는 함수 입니다.

SELECT 
	STRPOS('Hello', 'e') 
	,STRPOS('Hello', 'f')

결과

구글빅쿼리 문자함수 char_length

char_length 뻔한 함수 입니다.
문자열의 길이를 반환 하는 함수가 되겠습니다.
물론 lenght 함수와 함께 사용 할 수 있습니다.
character_length도 역시 똑같은 함수 입니다.

SELECT char_length('korea')
      ,length('korea');

결과

구글빅쿼리 문자함수 CONTAINS_SUBSTR

 

 

 

CONTAINS_SUBSTR은 스트링 내에서 해당 문자열이 있는지를 찾아서 있으면 True를 없으면 False를 반환 합니다. 대소문자는 구분하지 않습니다.

SELECT CONTAINS_SUBSTR('Sonny is World class football player!', 'world class')

결과

다음과 같은 경우에서도 사용 될 수 있습니다.

SELECT CONTAINS_SUBSTR((23, 35, 41), '35')

결과

23, 35, 41중에 35가 있으니 true를 반환 하게 됩니다.

이런식으로 두개의 컬럼을 지정하고, 하나라도 일치하는것을 찾을 수 도 있습니다.

SELECT * FROM Recipes WHERE CONTAINS_SUBSTR((Lunch, Dinner), 'potato');

+-------------------+-------------------------+------------------+
| Breakfast         | Lunch                   | Dinner           |
+-------------------+-------------------------+------------------+
| Bluberry pancakes | Egg salad sandwich      | Potato dumplings |
| Corned beef hash  | Lentil potato soup      | Glazed ham       |
+-------------------+-------------------------+------------------+

구글빅쿼리 함수 format

구글빅쿼리에서 format은 데이터의 출력 형태를 다양하게 변경을 해줄 수 있습니다.
다음 예시를 참고 하시면 원하는 포멧으로 데이터를 출력 할 수 있습니다.

format

구글빅쿼리 숫자함수 safe_devide

safe_devide, 말 그대로 안전하게 나눠준다는 말이겠죠?
아래와 같이 만약에 구글 빅쿼리에서 실행을 한다면 에러가 발생을 합니다.

select 10/0

에러 결과

당연히 0으로 나누면 에러가 발생을 하죠.
하지만 safe_devide 함수를 이용하면 그렇지 않습니다.

SELECT SAFE_DIVIDE(10, 0)

결과

단순하게 null을 반환 할 뿐입니다. 에러없이 이용이 가능 합니다.

 

 

 

구글빅쿼리 기타 숫자함수

ABS - 절댓값
SIGN - 음수, 0, 양수를 -1, 0, +1로 각각 출력

SIGN

IS_INF(X) - 값이 양 또는 음의 무한대일때 true를 반환함
RAND - 0~1 사이의 난수 값을 반환
SQRT - 제곱근을 반환
POW - 거듭제곱을 반환 *POWER와 동일 함

기타 등등의 함수들은 아래 페이지를 참고.

https://cloud.google.com/bigquery/docs/reference/standard-sql/mathematical_functions?hl=ko 

감사합니다!!

2021.07.28 - [Data Science] - 구글 빅쿼리(BigQuery) CSV 데이터 import 하는 방법

 

구글 빅쿼리(BigQuery) CSV 데이터 import 하는 방법

구글 빅쿼리(BigQuery) CSV 데이터 import 하는 방법 안녕하세요. 구글 빅쿼리(BigQuery) 에 생성된 테이블의 데이터를 채워보도록 할께요. 지난번에 구글 빅쿼리 계정 생성하고, 데이터를 넣을 테이블을

stricky.tistory.com

2021.07.28 - [Data Science] - 구글 빅쿼리(BigQuery) Cloud mysql, Cloud postgres 데이터 추가 import 하기

 

구글 빅쿼리(BigQuery) Cloud mysql, Cloud postgres 데이터 추가 import 하기

구글 빅쿼리(BigQuery) Cloud mysql, Cloud postgres 데이터 추가 import 하기 안녕하세요. 구글 빅쿼리(BigQuery) 에 계정을 생성하고, 테이블 생성까지 하였습니다. 이젠 생성한 테이블에 데이터를 넣어야 겠.

stricky.tistory.com

2021.07.28 - [Data Science] - 구글 빅쿼리(BigQuery) create table 방법 및 주의사항

 

구글 빅쿼리(BigQuery) create table 방법 및 주의사항

구글 빅쿼리(BigQuery) create table 방법 및 주의사항 안녕하세요. 지난번에 구글 빅쿼리(BigQuery)를 셋팅하고 서비스 계정을 만들어 datagrip과 연동하는것까지 포스팅을 드렸었는데요. 이번엔 연동한 da

stricky.tistory.com

by.sTricky