คำศัพท์สำคัญ
- ทรัพยากร
- เอนทิตีใน Google Ads เช่น
campaignหรือad_group - กลุ่ม
- มิติข้อมูลที่ใช้จัดกลุ่มข้อมูล เช่น
segments.dateหรือsegments.deviceเมื่อรวมกลุ่มไว้ในส่วนคำสั่งSELECTพร้อมกับเมตริก ระบบจะแยกเมตริกตามกลุ่ม - เมตริก
- การวัดประสิทธิภาพ เช่น
metrics.impressionsหรือmetrics.clicks - แหล่งข้อมูลที่มีการระบุแหล่งที่มา
- ทรัพยากรที่รวมเข้ากับทรัพยากรหลักโดยนัยในส่วนคำสั่ง
FROMซึ่งช่วยให้คุณเลือกแอตทริบิวต์ของทรัพยากรดังกล่าวพร้อมกับแอตทริบิวต์ของทรัพยากรหลักได้
ค้นหาข้อมูลทรัพยากรหรือข้อมูลเมตา
ภาษาการค้นหาของ Google Ads สามารถค้นหาข้อมูลประเภทต่อไปนี้จาก Google Ads API ได้
ทรัพยากรและแอตทริบิวต์ กลุ่ม และเมตริกที่เกี่ยวข้องโดยใช้
GoogleAdsServiceSearch หรือ SearchStream: ผลลัพธ์จากคำค้นหาGoogleAdsServiceคือรายการอินสแตนซ์GoogleAdsRowโดยที่GoogleAdsRowแต่ละรายการแสดงถึงทรัพยากรหากมีการขอแอตทริบิวต์หรือเมตริก แถวจะมีช่องเหล่านั้นด้วย หากมีการขอกลุ่มใดๆ การตอบกลับจะแสดงแถวเพิ่มเติมสำหรับ Tuple ของกลุ่ม-ทรัพยากรแต่ละรายการด้วย
ข้อมูลเมตาเกี่ยวกับฟิลด์และทรัพยากรที่ใช้ได้ใน
GoogleAdsFieldService: บริการนี้มีแคตตาล็อกของฟิลด์ที่ค้นหาได้พร้อมรายละเอียดเกี่ยวกับความเข้ากันได้และประเภทผลลัพธ์จากการค้นหา
GoogleAdsFieldServiceคือรายการอินสแตนซ์GoogleAdsFieldโดยที่GoogleAdsFieldแต่ละรายการมีรายละเอียดเกี่ยวกับฟิลด์ที่ขอ
ดูรายละเอียดเพิ่มเติมเกี่ยวกับโครงสร้างการค้นหาได้ที่โครงสร้างการค้นหาและไวยากรณ์ของ Google Ads Query Language
ค้นหาแอตทริบิวต์ของทรัพยากร
ต่อไปนี้คือตัวอย่างการค้นหาพื้นฐานสําหรับแอตทริบิวต์ของทรัพยากรแคมเปญที่แสดงวิธีแสดงรหัส ชื่อ และสถานะของแคมเปญ
SELECT
campaign.id,
campaign.name,
campaign.status
FROM campaign
ORDER BY campaign.id
การค้นหานี้จะจัดเรียงตามรหัสแคมเปญ GoogleAdsRow ที่ได้แต่ละรายการจะแสดงออบเจ็กต์ campaign ที่สร้างขึ้นด้วยช่องที่เลือก รวมถึง resource_name ของแคมเปญ
หากต้องการดูว่ามีช่องอื่นๆ ใดบ้างที่ใช้ได้กับคำค้นหาแคมเปญ โปรดดูเอกสารอ้างอิง Campaign
ค้นหาเมตริก
นอกจากแอตทริบิวต์ที่เลือกสำหรับทรัพยากรหนึ่งๆ แล้ว คุณยังค้นหาเมตริกที่เกี่ยวข้องได้ด้วย ดังนี้
SELECT
campaign.id,
campaign.name,
campaign.status,
metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
AND metrics.impressions > 1000
ORDER BY campaign.id
การค้นหานี้จะกรองเฉพาะแคมเปญที่มีสถานะเป็น PAUSED และมีการแสดงผลมากกว่า 1, 000 ครั้ง โดยจัดเรียงตามรหัสแคมเปญ GoogleAdsRow ที่ได้แต่ละรายการจะมีช่อง metrics ที่ป้อนข้อมูลด้วยเมตริกที่เลือก
ดูรายการเมตริกที่ค้นหาได้ในเอกสารประกอบของ Metrics
ค้นหากลุ่ม
นอกจากแอตทริบิวต์ที่เลือกสำหรับทรัพยากรหนึ่งๆ แล้ว คุณยังค้นหากลุ่มที่เกี่ยวข้องได้ด้วย ดังนี้
SELECT
campaign.id,
campaign.name,
campaign.status,
metrics.impressions,
segments.date
FROM campaign
WHERE campaign.status = 'PAUSED'
AND metrics.impressions > 1000
AND segments.date DURING LAST_30_DAYS
ORDER BY campaign.id
การค้นหานี้จะกรองเฉพาะแคมเปญที่มีสถานะเป็น PAUSED และมีการแสดงผลมากกว่า 1, 000 ครั้ง ซึ่งคล้ายกับการค้นหาเมตริก อย่างไรก็ตาม การค้นหานี้จะแบ่งกลุ่มข้อมูลตามวันที่ ซึ่งจะทำให้แต่ละ GoogleAdsRow ที่ได้แสดงถึงทูเพิลของแคมเปญและกลุ่มวันที่
การแบ่งกลุ่มจะแยกเมตริกที่เลือก โดยจัดกลุ่มตามแต่ละกลุ่มในส่วนคำสั่ง SELECT
ดูรายการกลุ่มที่ค้นหาได้ในเอกสารประกอบของ Segments
ค้นหาแอตทริบิวต์ของแหล่งข้อมูลที่เกี่ยวข้อง
ในการค้นหาทรัพยากรหนึ่งๆ คุณอาจรวมทรัพยากรที่เกี่ยวข้องอื่นๆ ได้ (หากมี) แหล่งข้อมูลที่เกี่ยวข้องเหล่านี้เรียกว่า "แหล่งข้อมูลที่ระบุแหล่งที่มา" คุณสามารถรวมทรัพยากรที่ระบุแหล่งที่มาโดยนัยได้โดยเลือกแอตทริบิวต์ในการค้นหา
SELECT
campaign.id,
campaign.name,
campaign.status,
bidding_strategy.name
FROM campaign
ORDER BY campaign.id
การค้นหานี้ไม่เพียงเลือกแอตทริบิวต์แคมเปญเท่านั้น แต่ยังดึงแอตทริบิวต์ที่เกี่ยวข้องจากแต่ละแคมเปญที่เลือกด้วย GoogleAdsRow ที่ได้แต่ละรายการจะแสดงออบเจ็กต์ campaign ที่สร้างขึ้นด้วยแอตทริบิวต์แคมเปญที่เลือก รวมถึงแอตทริบิวต์กลยุทธ์การเสนอราคาที่เลือก bidding_strategy.name
หากต้องการดูแหล่งข้อมูลที่มีการระบุแหล่งที่มาซึ่งใช้ได้กับคำค้นหาแคมเปญ โปรดดูเอกสารอ้างอิง Campaign
แนวทางปฏิบัติแนะนำ
- เลือกเฉพาะช่องที่ต้องการเพื่อหลีกเลี่ยงเวลาในการตอบกลับที่นานและหมดเวลา
- ใช้
LIMITระหว่างการพัฒนาและการทดสอบเพื่อหลีกเลี่ยงการประมวลผลชุดผลลัพธ์ขนาดใหญ่ - ใช้ตัวกรองในส่วนคำสั่ง
WHEREเพื่อลดการโอนข้อมูลและขนาดการตอบกลับ - ใช้
GoogleAdsFieldServiceเพื่อตรวจสอบความเข้ากันได้ของฟิลด์และประเภทข้อมูลก่อนสร้างการค้นหาที่ซับซ้อน - โปรดทราบว่าบางฟิลด์ โดยเฉพาะฟิลด์ที่เกี่ยวข้องกับข้อมูลจำนวนมากหรือการคำนวณที่ซับซ้อน อาจเพิ่มค่าใช้จ่ายในการค้นหา
เปลี่ยนแปลงตามผลการค้นหา
เมื่อค้นหาทรัพยากรที่ระบุ คุณจะใช้ผลลัพธ์ที่แสดงเป็นออบเจ็กต์ แก้ไข และส่งกลับไปยังเมธอด Mutate ในบริการของทรัพยากรนั้นได้ทันที ตัวอย่างเวิร์กโฟลว์มีดังนี้
- เรียกใช้การค้นหาแคมเปญ
PAUSEDทั้งหมดที่มีการแสดงผลมากกว่า 1,000 ครั้ง - รับออบเจ็กต์
Campaignจากช่องcampaignของGoogleAdsRowแต่ละรายการในการตอบกลับ - เปลี่ยนสถานะของแต่ละแคมเปญจาก
PAUSEDเป็นENABLED - เรียกใช้
CampaignService.MutateCampaignsพร้อมแคมเปญที่แก้ไขและFieldMaskที่เกี่ยวข้องเพื่ออัปเดตแคมเปญ
ข้อมูลเมตาของช่อง
คำค้นหาที่ส่งไปยัง GoogleAdsFieldService มีไว้เพื่อดึงข้อมูลเมตาของช่อง
ข้อมูลนี้สามารถใช้เพื่อทำความเข้าใจวิธีใช้ช่องร่วมกันในการค้นหา เนื่องจากข้อมูลพร้อมใช้งานจาก API และมีข้อมูลเมตาที่จำเป็นสำหรับการตรวจสอบหรือสร้างการค้นหา นักพัฒนาซอฟต์แวร์จึงสามารถดำเนินการดังกล่าวแบบเป็นโปรแกรมได้ ตัวอย่างการค้นหาข้อมูลเมตาโดยทั่วไปมีดังนี้
SELECT
name,
category,
selectable,
filterable,
sortable,
selectable_with,
data_type,
is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"
คุณสามารถแทนที่ <INSERT_RESOURCE_OR_FIELD> ในคำค้นหานี้ด้วยทรัพยากร (เช่น customer หรือ campaign) หรือช่อง (เช่น campaign.id, metrics.impressions หรือ ad_group.id)
ดูรายการช่องที่ค้นหาได้ในเอกสารประกอบของ GoogleAdsField
ความแตกต่างเฉพาะเวอร์ชัน
แม้ว่าไวยากรณ์ ส่วนคำสั่ง และโอเปอเรเตอร์ของ Google Ads Query Language จะเหมือนกันใน Google Ads API เวอร์ชันที่รองรับทั้งหมด (v23, v24, v25 และ v26) แต่แคตตาล็อกของทรัพยากร กลุ่ม เมตริก และลักษณะการรายงานที่ค้นหาได้จะแตกต่างกันไปตามเวอร์ชันหลัก ค้นหา GoogleAdsFieldService ที่ปลายทางเวอร์ชัน API เป้าหมายเพื่อตรวจสอบฟิลด์และกฎความเข้ากันได้สำหรับเวอร์ชันนั้นๆ
- มุมมองชิ้นงาน Final URL Expansion:
- การรองรับแคมเปญ Shopping (v26 ขึ้นไป):
final_url_expansion_asset_viewรองรับแคมเปญ Shopping (campaign.advertising_channel_type = 'SHOPPING') นอกเหนือจากแคมเปญ Performance Max และ Search สําหรับแคมเปญ Shopping คุณสามารถเลือกและกรองตามช่องad_groupได้ แต่จะเลือกช่องasset_groupไม่ได้ - เมตริกที่เลือกได้ (v25 ขึ้นไป): การค้นหา
final_url_expansion_asset_viewจะแสดงเมตริกที่เลือกได้ทั้งหมดสำหรับมุมมอง ใน v24 และเวอร์ชันก่อนหน้า การตอบกลับจะมีเฉพาะmetrics.conversionsและmetrics.conversions_valueสำหรับแคมเปญ Performance Max และmetrics.impressionsสำหรับแคมเปญ Search
- การรองรับแคมเปญ Shopping (v26 ขึ้นไป):
- แหล่งข้อมูลเป้าหมายวงจรลูกค้า: ใน v25 ขึ้นไป ระบบจะค้นหาเป้าหมายวงจรลูกค้าทั้งหมด (การได้ลูกค้าใหม่ การรักษาลูกค้า และการรักษาความภักดี) จากแหล่งข้อมูล
goalและcampaign_goal_configที่รวมกัน โดยแทนที่customer_lifecycle_goalและcampaign_lifecycle_goal(ซึ่งใช้สำหรับเป้าหมายการได้ลูกค้าใหม่ใน v24 และเวอร์ชันก่อนหน้า ควบคู่ไปกับgoalและcampaign_goal_configสำหรับเป้าหมายการรักษาลูกค้า) - การรายงานสินค้า Shopping สําหรับ App Campaign: ใน v24 ขึ้นไป แหล่งข้อมูล
shopping_productจะแสดงแถวผลิตภัณฑ์สําหรับ App Campaign นอกเหนือจากแคมเปญ Shopping, Performance Max, Demand Gen และแคมเปญวิดีโอ (ใน v23 ระบบจะยกเว้น App Campaign จากผลลัพธ์shopping_product) - แหล่งข้อมูล กลุ่ม และเมตริกเฉพาะเวอร์ชัน
- v26 ขึ้นไป: มีทรัพยากร
search_lift_keyword_bundle,campaign.lift_measurement_config,local_services_lead.campaign,segments.search_lift_keyword_bundle,segments.search_propertyและเมตริก Search Lift (เช่นmetrics.relative_search_lift,metrics.normalized_incremental_searches,metrics.search_lift_cost_microsและmetrics.search_lift_impressions) - v25 ขึ้นไป: มีแหล่งข้อมูลการวัดผล Lift (เช่น
lift_measurement_config) กลุ่มต่างๆ เช่นsegments.ad_sub_format_typeและsegments.loyalty_membershipรวมถึงเมตริกการมีส่วนร่วมใน YouTube (metrics.youtube_likes,metrics.youtube_commentsและmetrics.youtube_shares) นำlocal_services_lead.contact_details.emailออก (ซึ่งเลือกได้ใน v24 และเวอร์ชันก่อนหน้า) - v24 ขึ้นไป: รวมทรัพยากร
cart_data_sales_view,segments.conversion_attribution_event_typeในshopping_performance_view,segments.mobile_device_platformและsegments.ad_network_typeในperformance_max_placement_viewนำcampaign.video_brand_safety_suitability(แทนที่ด้วยcustomer.video_brand_safety_suitability),segments.ad_sub_network_typeในcampaign_budgetและsegments.click_typeในad_group_asset,campaign_assetและcustomer_asset(ซึ่งเลือกได้เฉพาะใน v23) ออก
- v26 ขึ้นไป: มีทรัพยากร
- รหัสข้อผิดพลาดในการมองย้อนกลับวันที่แบบละเอียด: คำค้นหาที่แบ่งกลุ่มตาม
segments.date,segments.weekหรือsegments.hour(หรือกรองตามช่วงวันที่ที่สั้นกว่า 1 เดือน) นอกกรอบเวลามองย้อนกลับ 37 เดือนจะแสดงผลDateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTEDใน v24 ขึ้นไป (หรือDateRangeError.UNKNOWNใน v23) ดูรายละเอียดได้ที่ช่วงวันที่
ตัวอย่างโค้ด
ไลบรารีของไคลเอ็นต์มีตัวอย่างการใช้ภาษาคำค้นหาของ Google Ads ใน GoogleAdsService โฟลเดอร์การดำเนินการพื้นฐานมีตัวอย่าง เช่น GetCampaigns, GetKeywords และ SearchForGoogleAdsFields