Retningslinjer for og eksempler på forespørgsler

Optimale løsninger til forespørgsler i massedataeksporter

Brug altid sammenlægningsfunktioner

Der er ingen garanti for, at data i tabellerne samles efter dato, webadresse, website eller en kombination af nøgler. Du bør derfor altid sammenlægge dine felter (SUM, COUNT osv.) for at sikre, at rækkeværdierne samles. En tabel kan f.eks. indeholde flere rækker med forespørgslen "fede katte":

query     date       search_type   impressions ...
fede katte 10-10-2022      WEB          1000
fede katte 10-10-2022      WEB           200
fede katte 10-10-2022    IMAGE          5000

Hvis du blot søger efter forespørgslen "fede katte", også for en bestemt dato og søgetype, kan det resultere i flere rækker. Du bør derfor sammenlægge felterne som vist nedenfor, hvis du vil se summen af dine eksponeringer:

/* FORKERT måde at se den mest populære forespørgsel på: Giver kun 1 række pr. forespørgsel */
SELECT query, impressions FROM searchconsole.searchdata_site_impression
ORDER BY 2 DESC LIMIT 1;

Resultat:
fede katte   5000

/* RIGTIG måde at se den mest populære forespørgsel på */
SELECT query, SUM(impressions) FROM searchconsole.searchdata_url_impression
WHERE query != ''  /* Bortfiltrer anonymiserede forespørgsler */
GROUP BY query ORDER BY 2 DESC LIMIT 1;

Resultat:
fede katte   6200

Begræns forespørgsler efter dato for at spare behandlingsomkostninger

Husk! Når du kører en forespørgsel i BigQuery, debiteres du for den, og dine tabeller kan blive meget store. De eksporterede tabeller er opdelt efter dato, hvilket gør det muligt at effektivt begrænse søgningen efter input, så kun datoer af interesse medtages. Dette kan føre til reelle besparelser på forespørgselsomkostningerne for store websites. En god metode til at minimere forespørgselsomkostningerne er at bruge en WHERE-klausul til at begrænse datointervallet i den datoopdelte tabel.

Bortfiltrer forespørgselsstrenge med nulværdi

Anonymiserede forespørgsler udgør ofte den mest almindelige forespørgsel for et website. En anonymiseret forespørgsel rapporteres som en streng med nullængde i tabellen. Hvis du vil se den mest populære forespørgsel for bestemte kriterier, er det en god idé at bortfiltrere forespørgselsværdier med nullængde fra din SQL-forespørgsel.

Eksempler på forespørgsler

Nedenfor kan du se nogle eksempler på forespørgsler, der kan hjælpe dig med at komme godt i gang med dataene.

Resultater efter website

Alle webstatistikker efter dag (seneste to uger)

SELECT
  data_date AS date,
  sum(impressions) AS impressions,
  sum(clicks) as clicks,
  sum(clicks) / sum(impressions) AS ctr,
  /* Der er tilføjet et ettal nedenfor, da position er nulbaseret */
  ((sum(sum_top_position) / sum(impressions)) + 1.0) AS avg_position

FROM searchconsole.searchdata_site_impression
WHERE search_type = 'WEB'
  AND data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day) and CURRENT_DATE()
GROUP BY data_date

ORDER BY date desc
  LIMIT 1000

Mest populære forespørgsler via mobilweb i USA efter klik (seneste to uger)

SELECT
  query,
  device,
  sum(impressions) AS impressions,
  sum(clicks) AS clicks,
  sum(clicks) / sum(impressions) AS ctr,
  ((sum(sum_top_position) / sum(impressions)) + 1.0) AS avg_position

FROM searchconsole.searchdata_site_impression
WHERE search_type = 'WEB'
    AND country = 'usa'
    AND device = 'MOBILE'
    AND data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day) and CURRENT_DATE()
GROUP BY 1,2
ORDER BY clicks
LIMIT 1000

Resultater efter webadresse

Mest populære Discover-webadresser efter klik (på en bestemt dag)

SELECT
  url,
  sum(impressions),
  sum(clicks)
  FROM searchconsole.searchdata_url_impression
WHERE search_type = 'DISCOVER'
  AND data_date = DATE(2022, 02, 01)
GROUP BY url
ORDER BY 3
LIMIT 1000

Samlet statistik over forespørgsler og webadresser for udvidede resultater med ofte stillede spørgsmål (seneste to uger)

SELECT
  url,
  query,
  sum(impressions) AS impressions,
  sum(clicks) AS clicks,
  sum(clicks) / sum(impressions) AS ctr,
  ((sum(sum_position) / sum(impressions)) + 1.0) AS avg_position
FROM searchconsole.searchdata_url_impression
WHERE search_type = 'WEB'
  AND is_tpf_faq = true
  AND data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day) and CURRENT_DATE()
GROUP BY 1,2 
ORDER BY clicks
LIMIT 1000

Al din trafik efter webadresse (seneste to uger)

SELECT
  url,
  search_type,
  sum(impressions) as impressions,
  sum(clicks) as clicks
FROM searchconsole.searchdata_url_impression
WHERE data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day) and CURRENT_DATE()
GROUP BY 1,2
ORDER BY 3 desc
LIMIT 1000

Eksponeringer for forespørgsler, der indeholder "dit_brand" (seneste to uger)

SELECT
  regexp_contains(query, 'dit_brand') AS contains_brand,
  sum(impressions) AS impressions,
  sum(clicks) AS clicks
FROM searchconsole.searchdata_url_impression
WHERE search_type = 'WEB'
  AND data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day) and CURRENT_DATE()
GROUP BY 1
ORDER BY 2 desc
LIMIT 1000

Var disse oplysninger nyttige?

Hvordan kan vi forbedre siden?
Søgning
Ryd søgning
Luk søgning
Hovedmenu
821925417492508971
true
Søg i Hjælp
true
true
true
true
true
83844
false
false