삶의 공유

Bigquery (구글 클라우드 플랫폼) 본문

Data Scientist/Python

Bigquery (구글 클라우드 플랫폼)

dkrehd 2021. 8. 16. 12:03
728x90
반응형

빅쿼리(구글 클라우드 플랫폼)

 

 

[데이터 기본 문법]

 

-- SELECT pickup_datetime, dropoff_datetime, passenger_count

-- FROM `bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015`

-- LIMIT 1000

-- SELECT passenger_count, count(*) as scst

-- FROM `bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015`

-- GROUP BY passenger_count

 

-- ‘bigquery-public-data:new_york_taxi_trips.tlc_yellow_trips_2015’ Table에서 pickup_datetime, dropoff_datetime, passenger_count, trip_distance를 추출해주세요

-- SELECT

-- pickup_datetime,

-- dropoff_datetime,

-- passenger_count,

-- trip_distance

-- FROM `bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015`

-- LIMIT 1000

 

-- SELECT *

-- FROM `bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015`

-- WHERE vendor_id = '1'

-- LIMIT 1000



SELECT *

FROM `bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015`

WHERE fare_amount >= 50

LIMIT 1000




[시간 데이터 다루기]

-- SELECT EXTRACT(DAY FROM DATE '2019-12-25') as the_day,

-- EXTRACT(YEAR FROM DATE '2019-12-25') as year

 

-- SELECT DATE_ADD(DATE '2019-03-25', INTERVAL 5 DAY) as five_days_later;

 

SELECT DATE_DIFF(DATE '2010-07-07', DATE '2001-12-25', DAY) as days_diff;

 

SELECT DATE_TRUNC(DATE '2008-12-25', MONTH) as month;

 

SELECT PARSE_DATETIME('%Y-%m-%d %H:%M:%S', '2019-12-25 13:45:55') AS datetime;

 

 

-- 문제 : 2015년 1월 한달간 시간별 trip의 수를 구해주세요

-- Table에서 2015년 1월이라는 조건이 시간별 trip의 수를 구해주세요

-- todo

-- 조건 걸기 => where

-- 시간별 => 시간을 추출해야되고

-- trip의 수 -> count

 

SELECT

EXTRACT(HOUR FROM pickup_datetime) as hour,

COUNT(pickup_datetime) as trip_cnt,

COUNT(*) as trip_cnt2

FROM `bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015`

WHERE EXTRACT(MONTH FROM pickup_datetime) = 1

GROUP BY hour

ORDER BY hour

LIMIT 1000

 

 

 

-- 문제 : table에서 요일별 trips의 수를 구해주세요

-- Table에서 요일별 trip의 수를 구해주세요

-- TODO

-- 요일을 구해야하고

-- trips의 수를 COUNT



SELECT

FORMAT_DATETIME('%u', pickup_datetime) as weekday,

COUNT(*) trip_cnt

FROM `bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015`

GROUP BY weekday

ORDER BY weekday

LIMIT 1000

 

 

 

 

참고 링크 : https://www.slideshare.net/zzsza/bigquery-147073606   -   [빅쿼리의 모든것]

반응형