bigquery (4) 썸네일형 리스트형 BigQuery의 FORMAT_DATETIME 함수 사용 방법 빅쿼리의 FORMAT_DATETIME 함수에 관한 글입니다. FORMAT_DATETIME 함수는 빅쿼리에서 가장 많이 사용되는 함수 중 하나입니다. FORMAT_DATETIME은 어떤 함수인가요? DATETIME 데이터의 형식을 변환하는 함수입니다. 이 함수를 이용하여 초, 분, 시간, 일자, 주차 등 원하는 형태로 데이터를 가공할 수 있습니다. 입력값의 데이터 형태는 DATETIME이어야 하고, 반환값은 문자열 형태로 반환됩니다. Input / Output 입력값의 데이터 형태는 DATETIME이어야 하고, 반환값은 문자열 형태로 반환됩니다. Input : DATETIME Output : STRING 어떻게 사용해야 하나요? 아래의 방식으로 사용할 수 있습니다. FORMAT_DATETIME(format.. 구글 빅쿼리에서 정규표현식 함수 REGEXP_CONTAINS를 사용하여 문자열 필터링하기 빅쿼리 정규표현식 함수인 REGEXP_CONTAINS를 사용하여 값을 필터링하는 방법에 대한 글입니다. 소개 문자열을 다루다보면, LIKE만으로는 필터링하기 어려운 문자열들이 있습니다. 그럴 때 빅쿼리에서 사용할 수 있는 것이 REGEXP_CONTAINS 함수입니다. 사용법 아래 코드블럭과 같이 사용할 수 있습니다. 정규표현식은 정규표현식 라이브러리인 re2를 지원합니다. 따라서 re2에서 지원하지 않는 정규표현식 문법들은 이 함수에서도 쓸 수 없습니다. 이 함수는 SELECT문과 WHERE문에서 쓸 수 있습니다. SELECT문에서 쓰면, TRUE 또는 FALSE의 형태로 반환되고, WHERE문에서 쓰면, 쿼리 결과에서 정규표현식을 만족시키는 값들만 반환합니다. REGEXP_CONTAINS(문자열, 정규.. [빅쿼리] 지원하지 않는 GROUP_CONCAT 함수 우회적으로 사용하기(STRING_AGG, PARTITION) 문제 빅쿼리에서는 GROUP_CONCAT 함수를 지원하지 않는다. 하지만 난 GROUP_CONCAT 같은 함수가 필요했다. 해결 방법 GROUP_CONCAT과 비슷한 기능을 하는 함수는 찾을 수 없었다. 결국 다른 함수들을 조합해서 이를 해결했다. SELECT STRING_AGG(emp_name), ', ') OVER(PARTITION BY salary) 해석하자면, 연봉(salary)이 같은 그룹별로 이름을 가져와서 콤마(',')를 구분자로 하여 문자열을 결합하는 방식이다. [빅쿼리] 지난달의 데이터만 추출하기(EXTRACT, CURRENT_DATE) 문제 추출 시점을 기준으로 지난 달의 데이터만 추출하고 싶은 경우다. 해결 방법 SELECT date FROM table WHERE EXTRACT(MONTH FROM date) = (EXTRACT(MONTH FROM CURRENT\_DATE('Asia/Seoul')) - 1) 해석하자면, 아래와 같다. 먼저 EXTRACT 함수를 이용해 date 컬럼에서 월을 추출한다. 그 다음 CURRENT_DATE와 EXTRACT 함수를 이용해 현재 일자의 월을 가져와서 1을 뺀다. 각 로우별로 2번에 해당하는 값만 가져오도록 설정하면, 지난 달의 데이터만 가져오게 된다.