ภาษาของคำค้นหาใน Google Ads

คำศัพท์สำคัญ

ทรัพยากร
เอนทิตีใน Google Ads เช่น campaign หรือ ad_group
กลุ่ม
มิติข้อมูลที่ใช้จัดกลุ่มข้อมูล เช่น segments.date หรือ segments.device เมื่อรวมกลุ่มไว้ในSELECT อนุประโยคที่มีเมตริก ระบบจะ แยกเมตริกตามกลุ่ม
เมตริก
การวัดประสิทธิภาพ เช่น metrics.impressions หรือ metrics.clicks
แหล่งข้อมูลที่ระบุแหล่งที่มา
ทรัพยากรที่เชื่อมโยงกับทรัพยากรหลักโดยนัยในFROM อนุประโยค ซึ่งช่วยให้คุณเลือกแอตทริบิวต์ของทรัพยากรนั้นพร้อมกับแอตทริบิวต์ของทรัพยากรหลักได้

ค้นหาข้อมูลทรัพยากรหรือข้อมูลเมตา

ภาษาการค้นหาของ Google Ads สามารถค้นหาข้อมูลประเภทต่อไปนี้ใน Google Ads API ได้

  • แหล่งข้อมูลและแอตทริบิวต์ กลุ่ม และเมตริกที่เกี่ยวข้องโดยใช้ GoogleAdsService Search หรือ SearchStream ผลลัพธ์จากคำค้นหา GoogleAdsService คือรายการอินสแตนซ์ของ GoogleAdsRow โดยแต่ละอินสแตนซ์ของ GoogleAdsRow แสดงถึงแหล่งข้อมูล

    หากมีการขอแอตทริบิวต์หรือเมตริกใด แถวจะรวมฟิลด์เหล่านั้นด้วย หากมีการขอกลุ่มใดๆ การตอบกลับจะแสดงแถวเพิ่มเติมสำหรับแต่ละ Tuple ของกลุ่มและทรัพยากรด้วย

  • ข้อมูลเมตาเกี่ยวกับฟิลด์และทรัพยากรที่มีอยู่ใน GoogleAdsFieldService บริการนี้มีแคตตาล็อกของฟิลด์ที่ค้นหาได้พร้อมรายละเอียดเกี่ยวกับ ความเข้ากันได้และประเภทของฟิลด์

    ผลลัพธ์จากคำค้นหา GoogleAdsFieldService คือรายการอินสแตนซ์ของ GoogleAdsField โดยแต่ละอินสแตนซ์ GoogleAdsField จะมีรายละเอียดเกี่ยวกับฟิลด์ที่ขอ

ดูรายละเอียดเพิ่มเติมเกี่ยวกับโครงสร้างการค้นหาได้ที่ โครงสร้างการค้นหาและ ไวยากรณ์ของภาษาการค้นหาของ Google Ads

ค้นหาแอตทริบิวต์ของทรัพยากร

ตัวอย่างคําค้นหาพื้นฐานสําหรับแอตทริบิวต์ของทรัพยากรแคมเปญที่ แสดงวิธีแสดงรหัส ชื่อ และสถานะของแคมเปญมีดังนี้

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 ในบริการของทรัพยากรนั้นได้ทันที ตัวอย่างเวิร์กโฟลว์มีดังนี้

  1. เรียกใช้การค้นหาสำหรับแคมเปญ PAUSED ทั้งหมดที่มีการแสดงผลมากกว่า 1,000 ครั้ง
  2. รับออบเจ็กต์ Campaign จากฟิลด์ campaign ของแต่ละ GoogleAdsRow ใน การตอบกลับ
  3. เปลี่ยนสถานะของแต่ละแคมเปญจาก PAUSED เป็น ENABLED
  4. เรียกใช้ 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 จะเหมือนกันใน Google Ads API ทุกเวอร์ชันที่รองรับ (v23, v24 และ v25) แต่แคตตาล็อกของทรัพยากรที่ค้นหาได้ กลุ่ม เมตริก และลักษณะการทํางานของการรายงานจะแตกต่างกันตามเวอร์ชันหลัก ส่งคำค้นหา GoogleAdsFieldService ที่เวอร์ชัน API เป้าหมาย ปลายทางเพื่อตรวจสอบฟิลด์และกฎความเข้ากันได้สำหรับเวอร์ชันนั้น

  • แหล่งข้อมูลเป้าหมายวงจรลูกค้า: ใน v25 ขึ้นไป ระบบจะค้นหาเป้าหมายวงจรลูกค้าทั้งหมด (การได้ลูกค้าใหม่ การรักษาลูกค้า และการรักษาความภักดี) จากแหล่งข้อมูล goal และ campaign_goal_config ที่รวมเป็นหนึ่งเดียว ซึ่งจะแทนที่ customer_lifecycle_goal และ campaign_lifecycle_goal (ซึ่งใช้สําหรับเป้าหมายการได้ลูกค้าใหม่ใน v24 และก่อนหน้า พร้อมกับ goal และ campaign_goal_config สําหรับเป้าหมายการรักษาลูกค้า)
  • เมตริกมุมมองชิ้นงาน Final URL Expansion: ใน v25 ขึ้นไป การค้นหา final_url_expansion_asset_view จะแสดงเมตริกที่เลือกได้ทั้งหมด สําหรับมุมมอง ใน v24 และเวอร์ชันก่อนหน้า คำตอบจะมีเฉพาะ metrics.conversions และ metrics.conversions_value สำหรับแคมเปญ Performance Max และ metrics.impressions สำหรับแคมเปญ Search
  • การรายงานสินค้าสำหรับ App Campaign: ใน v24 ขึ้นไป แหล่งข้อมูล shopping_product จะแสดงแถวผลิตภัณฑ์สําหรับ App Campaign นอกเหนือจากแคมเปญ Shopping, Performance Max, Demand Gen และแคมเปญวิดีโอ (ใน v23 จะไม่รวม App Campaign จากผลลัพธ์ของ shopping_product )
  • แหล่งข้อมูล กลุ่ม และเมตริกเฉพาะเวอร์ชัน
    • 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 เท่านั้น)
  • รหัสข้อผิดพลาดในการย้อนกลับวันที่แบบละเอียด: การค้นหาที่แบ่งกลุ่มตาม segments.date, segments.week หรือ segments.hour (หรือกรองตามช่วงวันที่ย่อยรายเดือน) ที่อยู่นอกเหนือกรอบเวลามองย้อนกลับ 37 เดือนจะแสดง DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED ใน v24 ขึ้นไป (หรือ DateRangeError.UNKNOWN ใน v23) ดูรายละเอียดได้ที่ ช่วงวันที่

ตัวอย่างโค้ด

ไลบรารีของไคลเอ็นต์มีตัวอย่างการใช้ภาษาการค้นหาของ Google Ads ใน GoogleAdsService โฟลเดอร์การดำเนินการพื้นฐานมีตัวอย่าง เช่น GetCampaigns, GetKeywords และ SearchForGoogleAdsFields