คุณส่งคำค้นหาสำหรับฟิลด์ทรัพยากร กลุ่ม และเมตริกไปยังเมธอด GoogleAdsService Search หรือ SearchStream
ได้ หากต้องการสร้างคําค้นหาในภาษาของคําค้นหาของ Google Ads คุณจะต้องสร้างโดยใช้ไวยากรณ์ของภาษา หากต้องการดูภาพรวมทั่วไปของภาษาของคําค้นหาของ Google Ads โปรดดูภาพรวมภาษาของคําค้นหาของ Google Ads การค้นหาประกอบด้วย
หลายส่วน ดังนี้
SELECTFROMWHEREORDER BYLIMITPARAMETERS
โดยใช้ชื่อฟิลด์ ชื่อทรัพยากร ตัวดำเนินการ เงื่อนไข และการเรียงลำดับเพื่อช่วยคุณเลือกข้อมูลที่ถูกต้อง เมื่อรวมเป็นคำค้นหาเดียว คุณจะส่งคำขอได้โดยใช้ Google Ads API
ข้อ
วิดีโอ: ความเข้ากันได้ของฟิลด์ GAQL
SELECT
อนุประโยค SELECT ระบุชุดฟิลด์ที่จะดึงข้อมูลในคำขอ
SELECT รับรายการฟิลด์ทรัพยากร ฟิลด์กลุ่ม
และเมตริกที่คั่นด้วยคอมมา โดยจะแสดงค่าในการตอบกลับ ต้องระบุSELECTในคำค้นหา
ตัวอย่างการค้นหาด้านล่างแสดงตัวอย่างการเลือกแอตทริบิวต์สำหรับ ทรัพยากรที่กำหนด
SELECT
campaign.id,
campaign.name
FROM campaign
คุณขอฟิลด์ประเภทต่างๆ ในคำขอเดียวได้ เช่น
SELECT
campaign.id,
campaign.name,
bidding_strategy.id,
bidding_strategy.name,
segments.device,
segments.date,
metrics.impressions,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ฟิลด์ทรัพยากร
campaign.idcampaign.name
ฟิลด์ทรัพยากร
bidding_strategy.idbidding_strategy.name
ฟิลด์กลุ่ม
segments.devicesegments.date
เมตริก
metrics.impressionsmetrics.clicks
- การค้นหาช่องที่เลือกไม่ได้ ฟิลด์เหล่านี้จะมี
Selectableแอตทริบิวต์ข้อมูลเมตาที่ทำเครื่องหมายเป็นfalse - การเลือกแอตทริบิวต์ของฟิลด์ที่ซ้ำ ฟิลด์เหล่านี้จะมี
isRepeatedแอตทริบิวต์ข้อมูลเมตาที่ทำเครื่องหมายเป็นtrue - การเลือกฟิลด์ที่ไม่พร้อมใช้งานสำหรับทรัพยากรที่ระบุใน
FROMข้อกำหนด เลือกแอตทริบิวต์ของทรัพยากรบางอย่างพร้อมกันไม่ได้ และจะมีเฉพาะ ชุดย่อยของเมตริกและกลุ่มทั้งหมดเท่านั้นที่ใช้ได้กับทรัพยากรใน ข้อFROM - การเลือกกลุ่มหรือเมตริกที่ใช้ร่วมกันไม่ได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ที่ส่วนการแบ่งกลุ่ม
ดูข้อมูลที่เกี่ยวข้องกับเงื่อนไขข้างต้นได้ในเอกสารอ้างอิง
หรือจาก GoogleAdsFieldService
จาก
FROM ระบุแหล่งข้อมูลหลักที่จะแสดง
แหล่งข้อมูลในอนุประโยค FROM จะกำหนดฟิลด์ที่ใช้ได้ในอนุประโยคอื่นๆ ทั้งหมด
สำหรับคำค้นหาที่ระบุ ระบุทรัพยากรได้เพียงรายการเดียวใน
ข้อความ FROM ต้องระบุFROM clause ในคำค้นหาเพื่อใช้เมธอด GoogleAdsService Search หรือ SearchStream อย่างไรก็ตาม ไม่ควรระบุข้อความในFROMเมื่อใช้ GoogleAdsFieldService
แม้ว่าจะมีทรัพยากรได้เพียง 1 รายการในอนุประโยค FROM สำหรับการค้นหาที่กำหนด แต่ฟิลด์จากทรัพยากรที่ระบุแหล่งที่มาก็อาจพร้อมใช้งานด้วย ระบบจะ
เชื่อมโยงแหล่งข้อมูลเหล่านี้กับแหล่งข้อมูลในFROM clause โดยปริยาย คุณจึง
เพียงเพิ่มแอตทริบิวต์ของแหล่งข้อมูลเหล่านั้นลงในSELECT clause เพื่อแสดงค่าของแอตทริบิวต์ แหล่งข้อมูลบางรายการ
ไม่มีแหล่งข้อมูลที่มีการระบุแหล่งที่มา ในตัวอย่างต่อไปนี้ คุณสามารถขอ
ทั้งรหัสกลุ่มโฆษณาและรหัสแคมเปญจากกลุ่มโฆษณาได้
SELECT
campaign.id,
ad_group.id
FROM ad_group
ระบบจะแสดงผลฟิลด์ resource_name ของทรัพยากรหลักเสมอ
ในตัวอย่างต่อไปนี้ ad_group.resource_name จะรวมอยู่ใน
การตอบกลับแม้ว่าจะไม่ได้เลือกอย่างชัดเจนในการค้นหา
SELECT ad_group.id
FROM ad_group
ทรัพยากรอื่นๆ ก็เช่นกันเมื่อเลือกอย่างน้อย 1 ฟิลด์
เช่น campaign.resource_name จะรวมอยู่ในคำตอบสำหรับคำค้นหาต่อไปนี้
SELECT
campaign.id,
ad_group.id
FROM ad_group
ที่ไหน
อนุประโยค WHERE จะระบุเงื่อนไขที่จะใช้เมื่อกรองข้อมูลสําหรับคําขอ เมื่อใช้คําสั่ง WHERE คุณจะระบุเงื่อนไขอย่างน้อย 1 รายการได้โดยใช้ AND เพื่อแยกเงื่อนไข แต่ละเงื่อนไขควรเป็นไปตามรูปแบบ
field_name Operator value โดยคุณจะระบุคําสั่ง WHERE หรือไม่ก็ได้ในการค้นหา
ตัวอย่างการใช้ WHERE เพื่อแสดงเมตริกจากช่วงเวลาที่กำหนดมีดังนี้
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
คุณรวมเงื่อนไขหลายรายการเพื่อกรองข้อมูลได้ ตัวอย่างนี้จะ ขอจำนวนคลิกของแคมเปญทั้งหมดที่มีการแสดงผลบนอุปกรณ์เคลื่อนที่ใน ช่วง 30 วันที่ผ่านมา
SELECT
campaign.id,
campaign.name,
segments.device,
metrics.clicks
FROM campaign
WHERE metrics.impressions > 0
AND segments.device = MOBILE
AND segments.date DURING LAST_30_DAYS
กลุ่มในข้อความ WHERE ต้องอยู่ในข้อความ SELECT โดยมีข้อยกเว้นเป็นกลุ่มวันที่ต่อไปนี้ ซึ่งเรียกว่ากลุ่มวันที่หลัก
segments.datesegments.weeksegments.monthsegments.quartersegments.year
ในคำค้นหาต่อไปนี้ โปรดสังเกตว่ามีการเลือก segments.date
เนื่องจากกลุ่มนี้เป็นกลุ่มวันที่หลัก จึงต้องระบุช่วงวันที่ที่แน่นอนซึ่งประกอบด้วยกลุ่มวันที่หลักในประโยคเงื่อนไข WHERE
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
กลุ่มทั้งหมดที่ตรงตามเงื่อนไขข้างต้น ได้แก่ segments.date,
segments.week, segments.month, segments.quarter และ segments.year หากเลือกกลุ่มใดกลุ่มหนึ่งเหล่านี้ ต้องใช้กลุ่มดังกล่าวอย่างน้อย 1 กลุ่มใน
WHERE
ดูรายละเอียดเพิ่มเติมเกี่ยวกับการกรองวันที่ได้ที่ช่วงวันที่
เมื่อกรอง คุณควรคำนึงถึงการคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ของตัวดำเนินการ ดูรายละเอียดเพิ่มเติมได้ที่การคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
ดูรายการโอเปอเรเตอร์ทั้งหมดได้ในไวยากรณ์ของภาษา
ORDER BY
โดยORDER BYจะระบุลำดับที่จะแสดงผลลัพธ์ ซึ่งจะช่วยให้คุณจัดเรียงข้อมูลจากน้อยไปมากหรือมากไปน้อย
ตามชื่อฟิลด์ได้ การเรียงลำดับแต่ละรายการจะระบุเป็น field_name ตามด้วย
ASC หรือ DESC หากไม่ได้ระบุทั้ง ASC และ DESC ค่าเริ่มต้นของลำดับจะเป็น ASC โดยคุณจะระบุคําสั่ง ORDER BY หรือไม่ก็ได้ในการค้นหา
การค้นหาต่อไปนี้จะจัดเรียงแคมเปญที่แสดงผลตามจำนวนคลิกจากมากไปน้อย
SELECT
campaign.name,
metrics.clicks
FROM campaign
ORDER BY metrics.clicks DESC
คุณระบุฟิลด์หลายรายการในคําสั่ง ORDER BY ได้โดยใช้รายการที่คั่นด้วยคอมมา
การจัดลำดับจะเกิดขึ้นตามลำดับเดียวกับที่ระบุไว้ในคำค้นหา
ตัวอย่างเช่น ในการค้นหานี้ซึ่งเลือกข้อมูลกลุ่มโฆษณา ผลลัพธ์จะจัดเรียง
ตามชื่อแคมเปญจากน้อยไปมาก จากนั้นตามจำนวน
การแสดงผลจากมากไปน้อย แล้วตามจำนวนคลิกจากมากไปน้อย
SELECT
campaign.name,
ad_group.name,
metrics.impressions,
metrics.clicks
FROM ad_group
ORDER BY
campaign.name,
metrics.impressions DESC,
metrics.clicks DESC
LIMIT
LIMIT clause ช่วยให้คุณระบุจำนวนผลลัพธ์ที่จะแสดงได้
ซึ่งจะเป็นประโยชน์หากคุณสนใจเฉพาะข้อมูลสรุป
เช่น LIMIT สามารถใช้เพื่อจำกัดจำนวนผลลัพธ์ทั้งหมดสำหรับการค้นหาต่อไปนี้
SELECT
campaign.name,
ad_group.name,
segments.device,
metrics.impressions
FROM ad_group
ORDER BY metrics.impressions DESC
LIMIT 50
พารามิเตอร์
อนุประโยค PARAMETERS ช่วยให้คุณระบุพารามิเตอร์เมตาสำหรับคำขอได้
พารามิเตอร์เหล่านี้อาจส่งผลต่อประเภทแถวที่แสดง
ระบบรองรับพารามิเตอร์เมตาต่อไปนี้
include_drafts
ตั้งค่า include_drafts เป็น true เพื่ออนุญาตให้แสดงผลเอนทิตีฉบับร่าง
ค่าเริ่มต้นคือ false
ตัวอย่างเช่น การค้นหาต่อไปนี้จะดึงแคมเปญฉบับร่างพร้อมกับแคมเปญปกติ
SELECT campaign.name
FROM campaign
PARAMETERS include_drafts=true
omit_unselected_resource_names
ตั้งค่า omit_unselected_resource_names เป็น true เพื่อป้องกันไม่ให้ระบบแสดงชื่อทรัพยากรของ
ทรัพยากรแต่ละประเภทในการตอบกลับ เว้นแต่จะมีการขออย่างชัดเจน
ในอนุประโยค SELECT ค่าเริ่มต้นคือ false
| ตัวอย่าง omit_unselected_resource_names | |
|---|---|
SELECT campaign.name, customer.id FROM campaign |
Returned resources:campaign.resource_name
omit_unselected_resource_names มีค่าเริ่มต้นเป็น false ดังนั้น
ระบบจะแสดงผลช่อง resource_name ทั้งหมด
|
SELECT campaign.name, customer.id FROM campaign PARAMETERS omit_unselected_resource_names = true |
Returned resources: ไม่มี omit_unselected_resource_names ระบุเป็น true
และ campaign.resource_name กับ customer.resource_name
ไม่ได้เป็นส่วนหนึ่งของข้อกำหนด SELECT
|
SELECT campaign.name, campaign.resource_name FROM campaign PARAMETERS omit_unselected_resource_names = true |
Returned resource:campaign.resource_name
omit_unselected_resource_names ระบุเป็น true
และ campaign.resource_name ขอเป็นส่วนหนึ่งของ
ข้อ SELECT
|
กฎภาษาเพิ่มเติม
นอกเหนือจากตัวอย่างสำหรับแต่ละข้อแล้ว ภาษาของคำค้นหาของ Google Ads ยังมีลักษณะการทำงานต่อไปนี้ที่สามารถนำไปใช้ได้
SELECTไม่จำเป็นต้องระบุฟิลด์ทรัพยากรหลักในคําสั่งสำหรับคําค้นหา เช่น คุณอาจต้องการใช้ฟิลด์ทรัพยากรหลักอย่างน้อย 1 รายการเพื่อกรองข้อมูลเท่านั้นSELECT campaign.id FROM ad_group WHERE ad_group.status = PAUSEDคุณเลือกเมตริกสำหรับทรัพยากรที่ต้องการได้โดยเฉพาะ ไม่จำเป็นต้องมีฟิลด์อื่นๆ จากทรัพยากรในการค้นหา
SELECT metrics.impressions, metrics.clicks, metrics.cost_micros FROM campaignเลือกฟิลด์การแบ่งกลุ่มได้โดยไม่ต้องมีฟิลด์ทรัพยากรหรือเมตริกที่เกี่ยวข้อง
SELECT segments.device FROM campaignฟิลด์
resource_name(เช่นcampaign.resource_name) สามารถใช้เพื่อกรองหรือจัดเรียงข้อมูลได้ดังนี้SELECT campaign.id, campaign.name FROM campaign WHERE campaign.resource_name = 'customers/1234567/campaigns/987654'