Các bảng tạm thời và bảng cố định giúp bạn đơn giản hoá các cụm từ tìm kiếm, giúp bạn dễ dàng nắm bắt và duy trì chúng hơn. Bằng cách tạo lớp trung gian các kết quả mà bạn có thể sử dụng lại, đồng thời cung cấp cho bạn tùy chọn giữ lại dữ liệu chưa được tổng hợp, bạn có thể giảm tài nguyên cần thiết để thực thi các truy vấn, để cải thiện hiệu suất.
Các bảng đã tạo phải tuân theo cùng một giá trị tĩnh
kiểm tra quyền riêng tư,
các hàm được phép,
và
giới hạn khi tham gia trường
được thực thi thông qua Ads Data Hub. Chế độ kiểm tra tiêu chuẩn để đảm bảo quyền riêng tư được áp dụng khi dữ liệu
từ câu lệnh SELECT
cuối cùng được xuất sang BigQuery.
Để tạo bảng, hãy làm theo cú pháp BigQuery:
CREATE [OR REPLACE] [TEMP | TEMPORARY] TABLE TABLE_NAME
[OPTIONS(privacy_checked_export=<true | false>)] AS query_statement;
Các mệnh đề sau không được hỗ trợ:
IF NOT EXISTS
PARTITION BY
CLUSTER BY
Bảng tạm thời
Bảng tạm thời (hay temp) cải thiện khả năng đọc truy vấn và cho phép bạn để tạo ra các kết quả trung gian không phụ thuộc vào tổng hợp hoặc khác biệt các yêu cầu liên quan.
Bảng tạm thời:
- Chỉ tồn tại ở cấp phiên hoạt động và hết hạn sau khi thực thi truy vấn
- Chỉ có thể dùng trong truy vấn mà từ đó được tạo
- Không phải tuân theo các yêu cầu về quyền riêng tư tổng hợp hoặc biệt lập
- Hỗ trợ không gian tên
tmp
(không bắt buộc)
Để tạo bảng tạm thời, hãy sử dụng câu lệnh CREATE TEMP TABLE
. Ví dụ này
tạo một bảng tạm thời để lưu trữ kết quả của một truy vấn, sau đó sử dụng bảng tạm thời
trong truy vấn con:
-- Get a list of creative IDs and store in a temporary table called creative_list:
CREATE TEMP TABLE creative_list AS (
SELECT
adgroup_id,
advertiser_id,
creative_id
FROM
adh.dv360_youtube_impressions
);
-- Return creatives with a count of impressions greater than 100
SELECT
creative_id,
COUNT(*) AS imps
FROM
creative_list -- Alternative: tmp.creative_list
WHERE
imps > 100
GROUP BY
creative_id;
Bảng cố định
Nếu cần tạo bảng trung gian để sử dụng trong các truy vấn khác, bạn có thể
hãy tạo một bảng ổn định. Cú pháp giống như đối với bảng tạm thời,
không có mệnh đề TEMP
. Các bảng ổn định đã được lọc trước, nghĩa là tổng hợp
các lần kiểm tra không được áp dụng và kéo dài trong 72 giờ. Nếu một bảng có tên đã chọn
đã tồn tại, nó đã bị ghi đè.
Bảng cố định:
- Hết hạn sau 72 giờ
- Có thể được dùng bên ngoài truy vấn đã tạo truy vấn đó
- Phải tuân theo các yêu cầu tổng hợp
- Chỉ yêu cầu không gian tên
tmp
khi truy cập vào bảng qua một truy vấn sau này
Để tạo một bảng cố định, hãy sử dụng câu lệnh CREATE TABLE
. Ví dụ này
tạo một bảng cố định để lưu trữ kết quả của một truy vấn, sau đó sử dụng
bảng cố định trong truy vấn sau này:
Cụm từ tìm kiếm 1
-- Get a list of creative IDs and store in a persistent table called creative_list:
CREATE TABLE creative_list AS (
SELECT
adgroup_id,
advertiser_id,
creative_id
FROM
adh.dv360_youtube_impressions
);
Cụm từ tìm kiếm 2
-- Return creatives which had more than 100 impressions
SELECT
creative_id,
COUNT(*) AS imps
FROM
tmp.creative_list
WHERE
imps > 100;
Áp dụng chế độ kiểm tra để đảm bảo quyền riêng tư
Ads Data Hub cũng hỗ trợ cú pháp SQL để tạo bảng kết quả trung gian đều phải được kiểm tra để đảm bảo quyền riêng tư.
Để tạo một bảng cần kiểm tra để đảm bảo quyền riêng tư, hãy thêm mệnh đề OPTIONS
vào
truy vấn của bạn:
OPTIONS(privacy_checked_export=true)
Ví dụ sau sẽ tạo một bảng tạm thời cấp phiên hoạt động và áp dụng các chế độ kiểm tra để đảm bảo quyền riêng tư:
-- Get a list of creative IDs and store in a temporary table called creative_list:
CREATE TEMP TABLE creative_list OPTIONS(privacy_checked_export=true) AS (
SELECT
adgroup_id,
advertiser_id,
creative_id
FROM
adh.dv360_youtube_impressions
);
Ví dụ này sẽ tạo một bảng cố định, áp dụng các chế độ kiểm tra để đảm bảo quyền riêng tư và xuất bảng này đối với dự án Google Cloud của bạn:
-- Get a list of creative IDs and store in a persistent table called creative_list:
CREATE TABLE `myproject.mydataset.creative_list` OPTIONS(privacy_checked_export=true) AS (
SELECT
adgroup_id,
advertiser_id,
creative_id
FROM
adh.dv360_youtube_impressions
);
Xuất nhiều bảng bằng một truy vấn duy nhất
Ads Data Hub hỗ trợ cú pháp SQL linh hoạt để xuất kết quả có thể xem trong trường hợp một bảng cho mỗi truy vấn là không đủ. Các bảng này đều phải trải qua cùng quy trình kiểm tra để đảm bảo quyền riêng tư được thực thi thông qua Ads Data Hub.
Cú pháp để xuất bảng cùng với biểu thức SQL chính là:
CREATE TABLE <project_name.dataset_name.table_name>
OPTIONS(privacy_checked_export=true) AS query_statement;
Ví dụ: để xuất một bảng sang đích BigQuery
myproject.mydataset.mytable
chứa số lượng hàng cho mỗi chiến dịch
Mã nhận dạng của bảng adh.google_ads_impressions
:
CREATE TABLE `myproject.mydataset.mytable` OPTIONS(privacy_checked_export=true) AS
SELECT campaign_id, COUNT(*) AS ct
FROM adh.google_ads_impressions
GROUP BY campaign_id;
Các bảng cũng có thể được tham chiếu trong cùng một truy vấn mà bảng đó được tạo. Ví dụ: truy vấn:
CREATE TABLE `myproject.mydataset.mytable` OPTIONS(privacy_checked_export=true) AS
SELECT campaign_id, COUNT(*) AS ct
FROM adh.google_ads_impressions
GROUP BY campaign_id;
SELECT ct FROM `myproject.mydataset.mytable`;
cho ra hai bảng:
- Một cột tại
myproject.mydataset.mytable
, với các cộtcampaign_id
vàct
- Một ở vị trí được chỉ định trong trường Bảng đích của công việc
đối số, với cột
ct
Bạn cũng có thể thêm một bản tóm tắt hàng đã lọc vào các bảng này. Đọc bài viết về tóm tắt hàng đã lọc.