✅ 1. INSERT

👉 新增資料語法

🛍️ **電商情境:**行銷團隊的助理想手動新增一筆顧客資料(例如活動報名的顧客),尚未透過網站註冊,但需要提前建立顧客紀錄。'

INSERT INTO `YourProjectID.YourDBID.YourTableID` (id, first_name, last_name, email, age, country, traffic_source)
VALUES (9999, 'Test', 'User', '[email protected]', 30, 'Taiwan', 'manual_signup');

Note. 多筆同時插入

INSERT INTO `YourProjectID.YourDBID.YourTableID` (id, first_name, email)
VALUES 
(10001, 'Alice', '[email protected]'),
(10002, 'Bob', '[email protected]');

✅ 2. UPDATE

👉 表單內容更新

🛍️ **電商情境:**行銷團隊想查詢想要將所有德國顧客的 traffic_source 更新為 'retargeting'

UPDATE `YourProjectID.YourDBID.YourTableID`
SET traffic_source = 'retargeting'
WHERE country = 'Germany';

✅ 3. UPDATE + JOIN

👉 跨表更新內容 (BigQuery 不支援傳統的 UPDATE JOIN,必須用 UPDATE ... FROM ... WHERE

🛍️ 電商情境:行銷團隊想查詢想將所有有下訂單的顧客標記為 active(根據 orders 表)

UPDATE `YourProjectID.YourDBID.YourTableID` AS u
SET traffic_source = 'active'
WHERE u.id IN (
  SELECT user_id
  FROM `YourProjectID.YourDBID.orders_copy`
  WHERE user_id IS NOT NULL
);

Note. 要先複製orders,到YourProject/ YourDB中

CREATE OR REPLACE TABLE YourProjectID.YourDBID.orders_copy AS
SELECT * FROM bigquery-public-data.thelook_ecommerce.orders;

✅ 4. DELETE