반응형
데이터를 가공해야하는 이유
- 다룰 데이터가 데이터 분석 용도로 상정되지 않은 경우
- 연산할 때 비교 가능한 상태로 만들고 오류를 회피하기 위한 경우 (데이터 형식, NULL)
데이터 가공
- 코드 값 레이블로 변경하기
- CASE 문 활용
- URL에서 요소 추출하기
- net.host 함수 사용 (bigquery)
- 정규표현식 활용 - regexp_extract
- 배열 활용 - split
select stamp , referrer , net.host(referrer) as referrer_host , url , regexp_extract(url, '//[^/]+([^?#]+)') as path , split(regexp_extract(url, '//[^/]+([^?#]+)'), '/')[safe_ordinal(2)] AS path1 , split(regexp_extract(url, '//[^/]+([^?#]+)'), '/')[safe_ordinal(3)] AS path2 , regexp_extract(url, 'id=([^&]*)') as id from `sqlrecipe.access_log` limit 100;
- 날짜와 타임스탬프
- 현재시각 current_date, current_timestamp
- 타입변환 CAST stamp AS date, timestamp
- EXTRACT(year, month, day, hour FROM stamp)
- substr(stamp, 1, 4) AS year
- 결손 값 디폴트 대치
- NULL값은 사칙 연산해도 NULL이 됨
- amount - coupon : coupon이 NULL일 경우 NULL이 반환됨
- amount - COALESCE(coupon, 0) : coupon이 NULL일 경우 0으로 변환하여 정상 계산
References
RegExr: Learn, Build, & Test RegEx
RegExr is an online tool to learn, build, & test Regular Expressions (RegEx / RegExp).
regexr.com
정규표현식의 개념과 패턴 사용법 총정리 · Wireframe
정규 표현식은 텍스트 내에서 특정한 규칙에 따른 문자열이 나타나는 범위를 검색하는 기법으로 텍스트를 다룰 때 널리 사용되며, 특히 텍스트 편집기에서 찾기/바꾸기와 관련해서 정규식을 어
soooprmx.com
정규표현식(Regex)의 개념과 기초 문법
정규표현식이란? : Regular Expression을 줄여서 Regex, Regexp 등으로 불린다. Computer Science의 정규 언어(Regular Language)로부터 유래한 것으로, 특정한 규칙을 가진 문자열의 집합을 표현하기 위해 쓰이는 *
co-no.tistory.com
반응형
'Data Analysis > SQL Recipe for Data Analysis' 카테고리의 다른 글
[SQL 레시피] 시계열 기반으로 데이터 집계하기 (0) | 2023.11.14 |
---|---|
[SQL 레시피] 하나의 테이블에 대한 조작 (0) | 2023.11.13 |
[SQL 레시피] 여러 개의 값에 대한 조작 (0) | 2023.11.13 |
[SQL 레시피] 데이터의 종류 (0) | 2023.11.07 |
[SQL 레시피] BigQuery 환경세팅 (0) | 2023.11.07 |