คู่มือนี้อธิบายสาเหตุที่แถวที่มีเมตริกเป็น 0 ปรากฏในรายงาน Google Ads API และวิธีแยกหรือจัดการแถวเหล่านั้นในคำค้นหา
เมตริกที่มีค่าเป็น 0 ในผลการค้นหา
เมื่อเรียกใช้การค้นหา คุณอาจพบเมตริกสำหรับเอนทิตีที่มีค่าเป็น 0 ซึ่งอาจเป็นเพราะ
- เอนทิตีไม่มีสิทธิ์แสดง
- มีการหยุดชั่วคราวภายในช่วงวันที่ของรายงาน
เมื่อใช้ผลการค้นหา คุณมักต้องการข้อมูลเกี่ยวกับประสิทธิภาพของแคมเปญ ในบริบทนี้ เมตริกที่เป็นศูนย์อาจไม่เป็นที่ต้องการ หากต้องการสร้างรายงานที่มีประโยชน์มากขึ้น คุณสามารถยกเว้นเมตริกที่เป็นศูนย์อย่างชัดแจ้งได้
ยกเว้นเมตริกที่มีค่าเป็น 0 ด้วยภาคแสดง
เพรดิเคตคือนิพจน์ที่ประเมินค่าเป็น TRUE, FALSE หรือ UNKNOWN
เพรดิเคตใช้ในเงื่อนไขการค้นหาของส่วนคำสั่ง WHERE ในภาษาการค้นหาของ Google Ads
การค้นหาต่อไปนี้แสดงวิธีนำเมตริกที่เป็นศูนย์ออกอย่างชัดเจนด้วยเพรดิเคต
SELECT
campaign.id,
metrics.impressions
FROM campaign
WHERE metrics.impressions > 0
ยกเว้นเมตริกที่เป็น 0 โดยการแบ่งกลุ่ม
ระบบจะยกเว้นเมตริกที่มีค่าเป็น 0 เสมอเมื่อแบ่งกลุ่มรายงาน โดยมีเงื่อนไขว่าเมตริกที่เลือกทั้งหมดต้องมีค่าเป็น 0 (ดูแถวที่แสดงผลซึ่งมีเมตริกเป็น 0)
การแบ่งกลุ่มรายงานทำได้โดยการรวมช่อง segments ไว้ในส่วนคำสั่ง SELECT ของคำค้นหา (การกรองกลุ่มวันที่หลักใน WHERE โดยไม่เลือกใน SELECT จะไม่แบ่งกลุ่มรายงาน) ตัวอย่างเช่น หากคุณแบ่งกลุ่มรายงานตามsegments.date เมตริกจะแยกย่อยออกเป็นแถวเดียวสำหรับแต่ละวันที่ ระบบจะไม่แสดงวันที่ที่ไม่มีเมตริกในรายงานดังกล่าว
สําหรับคําค้นหาต่อไปนี้ รายงานจะไม่รวมแถวที่มีเมตริกเป็น 0
SELECT
campaign.name,
metrics.impressions,
segments.date
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
แถวที่แสดงผลซึ่งมีเมตริกเป็น 0
ระบบจะไม่แสดงแถวที่เมตริกที่เลือกทั้งหมดเป็น 0 เมื่อแบ่งกลุ่ม เช่น ลองพิจารณาการค้นหาต่อไปนี้ที่เลือก metrics.impressions, metrics.clicks และ metrics.conversions
SELECT
ad_group_criterion.criterion_id,
metrics.impressions,
metrics.clicks,
metrics.conversions,
segments.date
FROM keyword_view
WHERE segments.date BETWEEN '2026-01-01' AND '2026-01-31'
รายงานที่ได้จะไม่มีแถวที่เมตริกทั้ง 3 รายการที่เลือกมีค่าเป็น 0 แต่จะแสดงแถวที่เมตริกที่เลือกอย่างน้อย 1 รายการมีค่ามากกว่า 0
เมื่อค้นหาข้อมูลย้อนหลังที่นานกว่าระยะเวลาเก็บรักษาข้อมูล ข้อมูลแบบละเอียดที่เก่ากว่า 37 เดือนจะไม่มีให้ใช้งานและจะไม่แสดงแถว คำขอสำหรับกลุ่มวันที่แบบละเอียด (segments.date, segments.week และ segments.hour) ที่ครอบคลุมช่วงที่เก่ากว่า 37 เดือนจะแสดงผลเป็น DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED ใน v24 ขึ้นไป (หรือ DateRangeError.UNKNOWN ใน v23) ระบบจะเก็บรักษาข้อมูลรวมระดับสูง (segments.month, segments.quarter และ segments.year) ไว้เป็นเวลา 11 ปี โดยสอดคล้องกับจุดเริ่มต้นของระยะเวลาตามปฏิทินที่สมบูรณ์ถัดไป ตัวอย่างเช่น หากวันสุดท้ายของระยะเวลามองย้อนกลับ 11 ปีตรงกับวันที่ 2015-03-22 (หรือ 2015-03-01) ข้อมูลรายเดือนจะพร้อมใช้งานตั้งแต่วันแรกของเดือนตามปฏิทินแบบเต็มเดือนแรกหลังจากวันสุดท้าย (2015-04-01) ดูรายละเอียดได้ที่ช่วงวันที่
การระงับเมตริกการเข้าถึงและค่าที่เป็น 0
นอกจากเอนทิตีที่ไม่ได้แสดงผลแล้ว เมตริกการเข้าถึง (เช่น metrics.unique_users และเมตริกกลุ่มความถี่ metrics.unique_users_two_plus ถึง metrics.unique_users_ten_plus) อาจปรากฏเป็น 0 หรือถูกละเว้นเมื่อระบบระงับข้อมูลการเข้าถึง เมตริก metrics.unique_users (และ metrics.unique_users_info) รองรับในแคมเปญ Display, วิดีโอ, Demand Gen และ App Campaign ส่วนเมตริกกลุ่มความถี่ metrics.unique_users_*_plus (และ metrics.unique_users_*_plus_info) ใช้กับแคมเปญวิดีโอ
การลดการเข้าถึงเกิดขึ้นได้จากหลายสาเหตุ ดังนี้
- เกณฑ์ความเป็นส่วนตัว: ระบบจะระงับข้อมูลการเข้าถึงเมื่อจำนวนผู้ใช้ไม่เป็นไปตามเกณฑ์ความเป็นส่วนตัว (เช่น k-anonymity) เพื่อปกป้องข้อมูลระบุตัวตนของผู้ใช้
- เกณฑ์คุณภาพ: ระบบอาจระงับข้อมูลการเข้าถึงหากข้อมูลไม่เป็นไปตามมาตรฐานคุณภาพ
- การเก็บรักษาข้อมูล: ระบบจะเก็บข้อมูลการเข้าถึงย้อนหลังไว้เป็นเวลา 3 ปี (36 เดือน) การค้นหาที่ครอบคลุมวันที่นอกกรอบเวลาการเก็บรักษา 3 ปีนี้จะไม่แสดงเมตริกการเข้าถึง แม้ว่าการค้นหาที่ครอบคลุมวันที่ระหว่าง 36 ถึง 37 เดือนที่ผ่านมาจะสําเร็จโดยไม่แสดง
DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTEDตามที่อธิบายไว้ในส่วนก่อนหน้า แต่จะละเว้นเมตริกการเข้าถึง (และแสดงDATE_RANGE_BEYOND_RETENTIONเมื่อเลือกข้อมูลเมตาการเข้าถึงที่เกี่ยวข้อง)
ใน v26 ขึ้นไป เมตริกการเข้าถึงผู้ใช้ที่ไม่ซ้ำกันแต่ละรายการจะมีช่องข้อมูลเมตาที่ใช้ร่วมกันประเภท ReachMetricInfo (เช่น metrics.unique_users_info และ metrics.unique_users_two_plus_info ถึง metrics.unique_users_ten_plus_info)
ใน Google Ads Query Language (GAQL) ช่องการเข้าถึงที่แสดงร่วมคือเมตริก MESSAGE ที่เลือกโดยตรงในส่วนคำสั่ง SELECT (เช่น metrics.unique_users_info) อย่าเพิ่ม .reach_metric_states ในส่วนคำสั่ง SELECT เนื่องจากการเลือกช่องข้อความที่ฝังใน GAQL จะไม่สำเร็จโดยมีข้อผิดพลาด UNRECOGNIZED_FIELD แต่การเลือก metrics.unique_users_info จะแสดงผลข้อความ ReachMetricInfo ที่มีช่อง enum ซ้ำ reach_metric_states ของประเภท ReachMetricState ซึ่งอธิบายว่าเมตริกถูกระงับหรือสมบูรณ์แล้ว
เมื่อใดก็ตามที่มีการระงับเมตริกการเข้าถึงหรืออยู่นอกกรอบเวลาการเก็บรักษา (PRIVACY_SUPPRESSION, QUALITY_SUPPRESSION หรือ DATE_RANGE_BEYOND_RETENTION) ระบบจะไม่ตั้งค่าช่อง optional int64 ใน Metrics (ซึ่งจะประเมินเป็น 0 หากไม่ได้เลือกการแสดงช่อง) ในขณะที่ LOW_QUALITY ยังคงป้อนข้อมูลเมตริกตัวเลขอยู่
COMPLETE: เมตริกการเข้าถึงเสร็จสมบูรณ์โดยไม่มีการระงับPRIVACY_SUPPRESSION: ระบบระงับข้อมูลการเข้าถึงเนื่องจากข้อจำกัดด้านความเป็นส่วนตัวQUALITY_SUPPRESSION: ระบบระงับข้อมูลการเข้าถึงเนื่องจากเหตุผลด้านคุณภาพของข้อมูลLOW_QUALITY: ระบบคำนวณเมตริกการเข้าถึงแล้ว แต่มีการแจ้งว่ามีคุณภาพต่ำDATE_RANGE_BEYOND_RETENTION: เมตริกการเข้าถึงไม่พร้อมใช้งานเนื่องจากช่วงวันที่อยู่นอกขีดจำกัดการเก็บรักษาข้อมูล 3 ปีสำหรับข้อมูลการเข้าถึง
การเลือกทั้งเมตริกการเข้าถึงและช่องข้อมูลเมตาที่เชื่อมโยงจะช่วยให้แอปพลิเคชันแยกความแตกต่างระหว่างการเข้าถึงที่เป็น 0 จริงๆ กับค่าการเข้าถึงที่ถูกระงับได้ ดังนี้
SELECT
campaign.id,
campaign.name,
metrics.unique_users,
metrics.unique_users_info,
metrics.unique_users_two_plus,
metrics.unique_users_two_plus_info,
metrics.unique_users_ten_plus,
metrics.unique_users_ten_plus_info
FROM campaign
WHERE campaign.advertising_channel_type = 'VIDEO'
AND segments.date DURING LAST_30_DAYS