GCS BigQuery partitioning clustering - ghdrako/doc_snipets GitHub Wiki
Column type:
- Time unit (TIMESTAMP,DATE,DATETIME) included time of ingetion (data zaladowania danych)
 - Integer
 
CREATE TABLE <name>
PARTITION BY <column_name to partition>
AS
SELECT ...,<column_name to partition>,...
FROM <table>
In type DATE default partitioning is DAY. Other option is Weekly,Monthly itd
CREATE TABLE <tab_name> (
id INT64,
fname STRING,
lname STRING,
level INT64)
PARTITION BY 
  RANGE_BUCKET(level,GENERATE_ARRAY(1,10,5))  -- generate two partition first for level 1 -5 and second level 6-10 
OPTIONS (
  require_partition_filter = true
)  
select * from <tab_name>  --not work because require_partition_filter = true
CREATE TABLE <tab_name> (
id INT64,
fname STRING,
lname STRING,
level INT64)
PARTITION BY _PARTITIONDATE  -- default partitioning DAY
OPTION (
  partition_expiration_days=30
)
SELECT * from <tab_name> where _PARTITIONDATE = '2023-10-02'
- Text column can be use to clustering but not partitioning
 - Can be used to multiple columns
 - only if table or partition is lerger then 1GB
 
CREATE TBLE <tab_name>
PARTITION BY 
  RANGE_BUCKET(power_engine,GENERATE_ARRAY(1,1000,100))
CLUSTER BY maker,manufacter_yer
AS
SELECT * FROM 'sales_data.automobile'