빅쿼리(BigQuery)에서 자주 사용되는 SQL 쿼리를 소개해드리겠습니다. 이들은 데이터 분석, 보고 및 처리 작업에서 효과적으로 사용됩니다.
SELECT 쿼리: 데이터를 검색하고 추출합니다.
SELECT column1, column2
FROM `your_dataset.your_table`
WHERE condition
ORDER BY column1;
GROUP BY 쿼리: 특정 열에 따라 데이터를 그룹화하고 집계합니다.
SELECT column1, COUNT(column2)
FROM `your_dataset.your_table`
GROUP BY column1;
JOIN 쿼리: 두 개 이상의 테이블을 조인하여 관련된 데이터를 결합합니다.
SELECT a.column1, b.column2
FROM `your_dataset.table1` a
JOIN `your_dataset.table2` b ON a.common_column = b.common_column;
WINDOW 함수 쿼리: 데이터의 서브셋에 대해 계산을 수행합니다.
SELECT column1, SUM(column2) OVER (PARTITION BY column1)
FROM `your_dataset.your_table`;
데이터셋 예시: 판매 데이터
테이블명: sales_data
- column1:
ProductCategory
(제품 카테고리를 나타냄, 예: 전자제품, 가구, 의류 등) - column2:
SaleAmount
(각 판매 건에 대한 판매 금액)
쿼리 목적: 각 제품 카테고리별 총 판매 금액을 계산하고 싶습니다.
SQL 쿼리
SELECT ProductCategory, SUM(SaleAmount) OVER (PARTITION BY ProductCategory)
FROM `sales_data`;
- 이 쿼리는
sales_data
테이블에서 각ProductCategory
(제품 카테고리)에 따라SaleAmount
(판매 금액)의 합계를 계산합니다. PARTITION BY ProductCategory
는ProductCategory
값이 같은 행들을 그룹화하고, 이 그룹 내에서SaleAmount
의 합계를 계산합니다.- 결과적으로, 이 쿼리는 각 제품 카테고리별로 총 판매 금액을 보여주는 데이터를 제공합니다. 예를 들어, 전자제품 카테고리의 총 판매 금액, 가구 카테고리의 총 판매 금액 등을 확인할 수 있습니다.
WITH 절 (Common Table Expressions, CTE): 복잡한 쿼리를 간소화합니다.
WITH subquery AS (
SELECT column1, column2
FROM `your_dataset.your_table`
)
SELECT column1
FROM subquery;
INSERT 쿼리: 새로운 데이터를 테이블에 삽입합니다.
INSERT INTO `your_dataset.your_table` (column1, column2)
VALUES (value1, value2);
UPDATE 쿼리: 기존 행의 데이터를 수정합니다.
UPDATE `your_dataset.your_table`
SET column1 = value1
WHERE condition;
DELETE 쿼리: 조건에 맞는 데이터를 테이블에서 삭제합니다.
DELETE FROM `your_dataset.your_table`
WHERE condition;
이러한 쿼리들은 데이터 분석 및 관리에 있어서 기본적이면서도 중요한 역할을 합니다. 빅쿼리에서 사용하기 전에 자신의 데이터셋과 테이블 이름으로 적절히 대체하여 사용하시면 됩니다.
8. CAST 함수
CAST
함수는 한 데이터 타입을 다른 데이터 타입으로 변환하는 데 사용됩니다. 이는 데이터 형식을 일치시키거나, 특정 형식으로 데이터를 출력할 필요가 있을 때 유용합니다.
SELECT CAST(column_name AS data_type)
FROM `your_dataset.your_table`;
예를 들어, 문자열을 정수로 변환하거나 날짜 형식을 변경하는 데 CAST
를 사용할 수 있습니다.
SELECT CAST('123' AS INT64) AS number;
SELECT CAST(date_column AS STRING) AS date_string;
9. SUBSTR 함수
SUBSTR
함수는 문자열에서 특정 부분을 추출하는 데 사용됩니다. 이 함수는 문자열, 시작 위치, 그리고 선택적으로 추출할 길이를 인자로 받습니다.
SELECT SUBSTR(column_name, start_position, [length])
FROM `your_dataset.your_table`;
예를 들어, 문자열의 처음 5자를 가져오거나, 3번째 문자부터 시작하여 4자를 추출할 수 있습니다.
SELECT SUBSTR('Hello World', 1, 5); -- 결과: 'Hello'
SELECT SUBSTR('Hello World', 3, 4); -- 결과: 'llo '
10. CASE WHEN...END 구문
CASE WHEN...END
구문은 SQL의 조건부 로직을 처리하는 데 사용됩니다. 이를 통해 값이나 조건에 따라 다른 결과를 반환할 수 있습니다.
SELECT
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END AS column_alias
FROM `your_dataset.your_table`;
예를 들어, 특정 값에 따라 다른 카테고리를 할당할 수 있습니다.
SELECT
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
ELSE 'D'
END AS grade
FROM `your_dataset.your_table`;
'🖥️ IT, 컴퓨터 > 📁 데이터 분석' 카테고리의 다른 글
[SQL] SQL JOINS 다이어그램 (0) | 2024.01.02 |
---|---|
[SQL] 쿼리 테스트 준비 (데이터 분석 직무) (0) | 2024.01.02 |
[SQL] 기본적인 SQL 쿼리 모음 (0) | 2024.01.01 |
[플랫폼] 한국은행 경제통계 시스템 :: API 사용 가능 (0) | 2023.12.26 |
[플랫폼] 금융 빅데이터 플랫폼 (0) | 2023.12.21 |
댓글