0 wskaźników

Z tego przewodnika dowiesz się, dlaczego w raportach interfejsu Google Ads API pojawiają się wiersze z zerowymi wartościami danych oraz jak je wykluczać lub obsługiwać w zapytaniach.

Dane o zerowej wartości w wynikach wyszukiwania

Podczas wykonywania zapytania możesz napotkać dane o wartości 0 dla niektórych elementów. Oto możliwe przyczyny:

  • Encje nie kwalifikują się do wyświetlania.
  • zostały wstrzymane w okresie objętym raportem.

W wynikach zapytania często chcesz uzyskać informacje o skuteczności kampanii. W tym kontekście zerowe wartości danych mogą być niepożądane. Aby uzyskać bardziej przydatny raport, możesz wyraźnie wykluczyć dane o wartości 0.

Wykluczanie wskaźników o wartości 0 za pomocą predykatu

Predykat to wyrażenie, które zwraca wartość TRUE, FALSE lub UNKNOWN. Predykaty są używane w warunku wyszukiwania klauzul WHERE w języku zapytań Google Ads.

Poniższe zapytanie pokazuje, jak usunąć dane o wartości 0 za pomocą predykatu:

SELECT
  campaign.id,
  metrics.impressions
FROM campaign
WHERE metrics.impressions > 0

Wykluczanie zerowych danych przez segmentowanie

Podczas segmentowania raportu dane o wartości 0 są zawsze wykluczane, pod warunkiem że wszystkie wybrane dane mają wartość 0 (patrz Zwracane wiersze z danymi o wartości 0).

Raport można podzielić na segmenty, dodając dowolne pole segments do klauzuli SELECT zapytania wyszukiwania (filtrowanie według podstawowego segmentu daty w WHERE bez wybierania go w SELECT nie powoduje podziału raportu na segmenty). Jeśli na przykład posegmentujesz raport według wymiaru segments.date, dane zostaną podzielone na wiersze odpowiadające poszczególnym datom. Daty, dla których nie ma danych, nie są uwzględniane w takim raporcie.

W przypadku tego zapytania raport nie będzie zawierać wierszy z zerowymi wartościami danych:

SELECT
  campaign.name,
  metrics.impressions,
  segments.date
FROM campaign
WHERE segments.date DURING LAST_30_DAYS

Zwrócone wiersze z zerowymi danymi

Wiersze, w których wszystkie wybrane dane mają wartość 0, nie będą zwracane podczas segmentacji. Rozważmy na przykład zapytanie, które wybiera metrics.impressions, metrics.clicks i 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'

Wygenerowany raport nie będzie zawierać żadnych wierszy, w których wszystkie 3 wybrane rodzaje danych mają wartość 0, ale będzie zawierać wiersze, w których co najmniej 1 z 3 wybranych rodzajów danych ma wartość większą niż 0.

Podczas wysyłania zapytań o dane historyczne sprzed okresu przechowywania danych szczegółowe dane starsze niż 37 miesięcy są niedostępne i nie zwracają wierszy. Żądania dotyczące szczegółowych segmentów dat (segments.date, segments.week i segments.hour) obejmujące zakresy starsze niż 37 miesięcy zwracają błąd DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED w wersji 24 i nowszych (lub DateRangeError.UNKNOWN w wersji 23). Ogólne dane zbiorcze (segments.month, segments.quarter i segments.year) są przechowywane przez 11 lat, licząc od początku następnego pełnego okresu kalendarzowego. Jeśli na przykład 11-letni okres ważności kończy się 2015-03-22 (lub 2015-03-01), dane miesięczne są dostępne od pierwszego pełnego miesiąca kalendarzowego po dacie zakończenia (2015-04-01). Szczegółowe informacje znajdziesz w artykule Zakresy dat.

Pomijanie wskaźników zasięgu i wartości zerowe

Oprócz elementów, które nie wygenerowały wyświetleń reklam wysłanych przez serwer, wskaźniki zasięgu (takie jak metrics.unique_users i dane o częstotliwości metrics.unique_users_two_plus–metrics.unique_users_ten_plus) mogą być wyświetlane jako zero lub pomijane, gdy dane o zasięgu są ukryte. Dane metrics.unique_users (i metrics.unique_users_info) są obsługiwane w kampaniach w sieci reklamowej, kampaniach wideo, kampaniach generujących popyt i kampaniach promujących aplikacje, natomiast dane dotyczące przedziału częstotliwości metrics.unique_users_*_plus (i metrics.unique_users_*_plus_info) mają zastosowanie do kampanii wideo.

Ograniczenie zasięgu może nastąpić z kilku powodów:

  • Progi prywatności: dane o zasięgu są ukrywane, gdy liczba użytkowników nie spełnia progów prywatności (np. k-anonimowości), aby chronić tożsamość użytkowników.
  • Progi jakości: dane o zasięgu mogą zostać wstrzymane, jeśli nie spełniają standardów jakości.
  • Przechowywanie danych: dane historyczne dotyczące zasięgu są przechowywane przez 3 lata (36 miesięcy). Zapytania obejmujące daty wykraczające poza ten 3-letni okres przechowywania nie mogą zwracać wskaźników zasięgu. Zapytania obejmujące daty sprzed 36–37 miesięcy są realizowane bez zwracania błędu DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED opisanego w poprzedniej sekcji, ale pomijają wskaźniki zasięgu (i zwracają błąd DATE_RANGE_BEYOND_RETENTION, gdy wybrane są metadane zasięgu towarzyszącego).

W wersji 26 i nowszych każdy wskaźnik zasięgu unikalnych użytkowników ma powiązane pole metadanych typu ReachMetricInfo (np. metrics.unique_users_info i od metrics.unique_users_two_plus_info do metrics.unique_users_ten_plus_info).

W języku zapytań Google Ads (GAQL) pola zasięgu towarzyszącego to dane MESSAGE wybrane bezpośrednio w klauzuli SELECT (np. metrics.unique_users_info). Nie dodawaj .reach_metric_states w klauzuli SELECT, ponieważ wybór zagnieżdżonych pól wiadomości w GAQL kończy się błędem UNRECOGNIZED_FIELD. Zamiast tego wybranie metrics.unique_users_info zwraca komunikat ReachMetricInfo zawierający powtarzające się pole typu wyliczeniowego reach_metric_states typu ReachMetricState, które opisuje, czy dane zostały pominięte czy są kompletne.

Gdy wskaźnik zasięgu jest pomijany lub znajduje się poza oknem przechowywania (PRIVACY_SUPPRESSION, QUALITY_SUPPRESSION lub DATE_RANGE_BEYOND_RETENTION), jego pole optional int64 w Metrics nie jest ustawione (co daje wartość 0, jeśli obecność pola nie jest sprawdzana), podczas gdy LOW_QUALITY nadal wypełnia wskaźnik liczbowy:

  • COMPLETE: wskaźnik zasięgu jest gotowy i nie został pominięty.
  • PRIVACY_SUPPRESSION: dane dotyczące zasięgu zostały pominięte ze względu na ochronę prywatności.
  • QUALITY_SUPPRESSION: dane o zasięgu zostały pominięte ze względu na jakość danych.
  • LOW_QUALITY: wskaźnik zasięgu został obliczony, ale został oznaczony jako niskiej jakości.
  • DATE_RANGE_BEYOND_RETENTION: dane dotyczące zasięgu są niedostępne, ponieważ zakres dat wykracza poza 3-letni okres przechowywania danych dotyczących zasięgu.

Wybierając zarówno wskaźnik zasięgu, jak i powiązane z nim pole metadanych, aplikacja może odróżnić rzeczywisty zerowy zasięg od zasięgu, który został ukryty:

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