คุณสามารถส่งการค้นหาสำหรับช่องทรัพยากร กลุ่ม และเมตริกไปที่
GoogleAdsService
Search หรือ SearchStream
ในการสร้างคำค้นหาในภาษาคำค้นหาของ Google Ads คุณจะต้องสร้างคำค้นหาโดยใช้
ไวยากรณ์ภาษา ข้อความค้นหาประกอบด้วยตัวเลข
วลี:
SELECT
FROM
WHERE
ORDER BY
LIMIT
PARAMETERS
วรรคจะใช้ชื่อช่อง ชื่อทรัพยากร โอเปอเรเตอร์ เงื่อนไข และ คำสั่งซื้อเพื่อช่วยคุณเลือกข้อมูลที่ถูกต้อง เมื่อรวมกันเป็นรายการเดียว คุณจะส่งคำขอโดยใช้ Google Ads API ได้
ข้อกำหนด
วิดีโอ: ความเข้ากันได้ของช่อง GAQL
เลือก
คำสั่ง 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.id
campaign.name
ช่องทรัพยากร
bidding_strategy.id
bidding_strategy.name
ฟิลด์กลุ่ม
segments.device
segments.date
เมตริก
metrics.impressions
metrics.clicks
บางฟิลด์อาจไม่ได้รับอนุญาตในวรรคคำสั่ง SELECT
เนื่องจากสาเหตุต่อไปนี้
ข้อจำกัด:
- ค้นหาฟิลด์ที่ไม่สามารถเลือกได้ ฟิลด์เหล่านี้จะมีแอตทริบิวต์
ทำเครื่องหมายแอตทริบิวต์ข้อมูลเมตา
Selectable
เป็นfalse
แล้ว - การเลือกแอตทริบิวต์ของช่องที่ซ้ำได้ ฟิลด์เหล่านี้จะมีแอตทริบิวต์
ทำเครื่องหมายแอตทริบิวต์ข้อมูลเมตา
isRepeated
เป็นtrue
แล้ว - เลือกช่องที่ไม่พร้อมใช้งานสำหรับทรัพยากรที่ระบุใน
FROM
วรรค ไม่สามารถเลือกแอตทริบิวต์ของทรัพยากรบางรายการร่วมกันได้ และเลือกแอตทริบิวต์เฉพาะ ชุดย่อยของเมตริกและกลุ่มทั้งหมดจะใช้ได้สำหรับทรัพยากรใน ข้อความFROM
- การเลือกกลุ่มหรือเมตริกที่ใช้ร่วมกันไม่ได้ สำหรับ สำหรับข้อมูลเพิ่มเติม โปรดดู การแบ่งกลุ่มลูกค้า
ข้อมูลที่เกี่ยวข้องกับเงื่อนไขข้างต้นสามารถพบได้ในเอกสารอ้างอิงของเรา
หรือจาก GoogleAdsFieldService
จาก
วรรค FROM
ระบุทรัพยากรหลักที่จะแสดงผล
ในวรรคคำสั่ง FROM
จะกำหนดช่องที่สามารถใช้กับช่องอื่นๆ ทั้งหมด
สำหรับข้อความค้นหาที่ระบุ ระบุทรัพยากรได้เพียงรายการเดียวใน
ข้อความ FROM
ต้องระบุวลี FROM
ในการค้นหาไปยัง
GoogleAdsService
ค้นหา หรือ SearchStream
อย่างไรก็ตาม คุณไม่ควรระบุเมื่อใช้
GoogleAdsFieldService
แม้ว่าในข้อความค้นหา FROM
จะมีทรัพยากรได้เพียง 1 รายการเท่านั้น แต่ช่อง
จากแหล่งข้อมูลที่มีการระบุแหล่งที่มาอาจใช้งานได้ด้วย แหล่งข้อมูลเหล่านี้
เข้าร่วมกับทรัพยากรในวรรคเงื่อนไข FROM
โดยปริยาย ดังนั้นคุณเพียงแค่ต้อง
เพิ่มแอตทริบิวต์ลงในวรรค SELECT
เพื่อแสดงค่า ไม่ใช่ทั้งหมด
มีทรัพยากรที่ระบุแหล่งที่มา ในตัวอย่างต่อไปนี้ คุณสามารถส่งคำขอ
ทั้งรหัสกลุ่มโฆษณาและรหัสแคมเปญจากกลุ่มโฆษณา
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.date
segments.week
segments.month
segments.quarter
segments.year
ในการค้นหาต่อไปนี้ โปรดทราบว่ามีการเลือก segments.date
ไว้
เนื่องจากกลุ่มนี้เป็นกลุ่มวันที่หลัก จึงต้องกำหนดวันที่ที่แน่นอน
ช่วงที่ประกอบด้วยกลุ่มวันที่หลักในวรรคเงื่อนไข WHERE
ที่จะต้องระบุ
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
กลุ่มทั้งหมดที่เป็นไปตามเงื่อนไขข้างต้น ได้แก่ groups.date, segments.week,
segmentation.month,segment.quarter และsegment.year แล้ว หากกลุ่มใดกลุ่มหนึ่งเหล่านี้
ที่เลือกไว้ คุณต้องใช้อย่างน้อยหนึ่งรายการในวรรค 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
ให้คุณระบุจำนวนผลลัพธ์ที่จะส่งคืน
วิธีนี้เป็นประโยชน์หากคุณสนใจเฉพาะข้อมูลสรุป
ตัวอย่างเช่น 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
สำหรับการค้นหา ตัวอย่างเช่น คุณอาจต้องการใช้ ฟิลด์ทรัพยากรเพื่อกรองข้อมูล: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'