데이터 분석/SQL
[BigQuery] Table 생성
BTC_기범
2022. 5. 7. 17:54
더보기
출처 : 데이터 분석을 위한 SQL 레시피
bigquery table 생성에 대해 살펴보겠다.
미리 말하자면 주의 사항은 data set이라는 구조이다.
Table 생성
DROP TABLE IF EXISTS mst_users; # table 존재 여부 확인 및 삭제
CREATE TABLE mst_users( # table 생성
user_id string(255) # BigQuery는 varchar라는 데이터형은 없고 string 데이터형 사용
, register_date string(255)
, register_device integer
);
INSERT INTO mst_users # table에 데이터 삽입
VALUES # table에 넣을 데이터 입력
('U001', '2016-08-26', 1)
, ('U002', '2016-08-26', 2)
, ('U003', '2016-08-27', 3)
;
오류
위의 쿼리는 보통 SQL 미들웨어에서 작성 시 작동될 것이다. 하지만 BigQuery에서는 다음과 같은 오류가 발생한다.
위와 같은 오류가 발생하는 이유는 BigQuery는 프로젝트 > 노드 > 데이터셋 > 테이블 순의 구조를 가지기 때문이다. 이러한 이유로 테이블을 생성하기 위해서는 데이터셋을 앞에 표시해주어야 한다.
수정 쿼리
DROP TABLE IF EXISTS ch3.mst_users;
CREATE TABLE ch3.mst_users(
user_id string(255)
, register_date string(255)
, register_device integer
);
INSERT INTO ch3.mst_users
VALUES
('U001', '2016-08-26', 1)
, ('U002', '2016-08-26', 2)
, ('U003', '2016-08-27', 3)
;
나의 경우 Table을 생성할 데이터셋의 이름이 'ch3'이다.
프로젝트명, 노드명, 데이터셋명 확인 위치
노란색은 프로젝트명, 분홍색은 노드명, 보라색은 데이터셋명이다.