Eine Abfrage besteht aus einer Reihe von Klauseln: SELECT
,
FROM
,
WHERE
,
ORDER BY
LIMIT
,
und PARAMETERS
.
Klauseln verwenden Feldnamen, Ressourcennamen, Operatoren, Bedingungen und Reihenfolgen, die zu einer einzigen Abfrageanfrage kombiniert werden.
Grundsätzlich müssen Sie Folgendes tun, um eine Abfrage zu erstellen:
- Geben Sie eine Ressource an, von der Daten abgerufen werden sollen.
- Fügen Sie Felder und Messwerte hinzu, um festzulegen, welche Daten zurückgegeben werden sollen.
- Fügen Sie Segmente hinzu, um Ihre Ergebnisse zu gruppieren.
- Fügen Sie zugeordnete Ressourcen hinzu, um zugehörige Ressourcendaten implizit zusammenzuführen.
- Sie können die Ergebnisse filtern, sortieren und einschränken.
SELECT
-Klausel
In der SELECT
-Klausel wird Folgendes ausgeführt:
- Ist eine required-Klausel in einer Abfrage.
- Gibt eine Reihe von Feldern an, die in der Anfrage abgerufen werden sollen.
- Es wird eine durch Kommas getrennte Liste von Ressourcenfeldern, benutzerdefinierten Spalten, benutzerdefinierten Floodlight-Variablen, Segmentfelder und Messwerte und gibt die Werte in der Antwort.
Diese Beispielabfrage zeigt Ihnen, wie Sie Attribute der campaign
auswählen
Ressource:
SELECT
campaign.id,
campaign.name
FROM campaign
Mehrere Feldtypen
Sie können in derselben Anfrage verschiedene Feldtypen anfordern.
Die folgende Beispielabfrage zeigt eine einzelne Abfrage mit einer Kombination aus:
- Ressourcenfelder:
campaign.id
,campaign.name
,bidding_strategy.id
undbidding_strategy.name
. - Segmentfelder:
segments.device
undsegments.date
. - Messwertfelder:
metrics.impressions
undmetrics.clicks
.
SELECT
campaign.id,
campaign.name,
bidding_strategy.id,
bidding_strategy.name,
segments.device,
segments.date,
metrics.impressions,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Siehe Segmentierung finden Sie weitere Informationen zur Segmentierung von Suchberichten.
Hauptressourcenfeld
Normalerweise würden Sie Ihr Hauptressourcenfeld in die Datei SELECT
einfügen.
Dies ist jedoch optional und nicht erforderlich.
In dieser Beispielabfrage wird ein Hauptressourcenfeld (ad_group.status
) verwendet, um nur zu filtern
die Ergebnisse.
SELECT campaign.id
FROM ad_group
WHERE ad_group.status = PAUSED
Benutzerdefinierte Floodlight-Variablen
Sie können benutzerdefinierte Floodlight-Variablen in die SELECT-Klausel einfügen, indem Sie ihre IDs.
In diesem Beispiel enthält die Abfrage eine benutzerdefinierte Variable mit der ID 123454321 für die Kampagnenressource zu erhalten.
SELECT
conversion_custom_metrics.id[123454321]
FROM campaign
SELECT
conversion_custom_dimensions.id[123454321]
FROM campaign
Benutzerdefinierte Spalten
Sie können benutzerdefinierte Spalten mithilfe ihrer IDs in die SELECT-Klausel aufnehmen.
In diesem Beispiel enthält die Abfrage eine benutzerdefinierte Spalte mit der ID 12345678 für die Kampagnenressource zu erhalten.
SELECT
custom_columns.id[12345678]
FROM campaign
Informationen zum Abrufen benutzerdefinierter Spalten-IDs
Messwertfelder
Sie können Messwertfelder für eine bestimmte Ressource auswählen, ohne andere
aus der Ressource in der SELECT
-Klausel.
Mit dieser Beispielabfrage werden die Messwerte impressions
und clicks
für die campaign
ausgewählt.
.
SELECT
metrics.impressions,
metrics.clicks
FROM campaign
Unter metrics
finden Sie
Liste mit Messwertfeldern, die Sie in Ihren Abfragen verwenden können.
Segmentierungsfelder
Sie können Segmentfelder auswählen, ohne zugehörige Ressourcenfelder anzugeben
oder Messwerte in die SELECT
-Klausel eingeben.
In dieser Beispielabfrage werden die Ergebnisse nach Gerät segmentiert.
SELECT segments.device
FROM campaign
Unter segments
finden Sie
Liste mit Segmentfeldern, die Sie in Ihren Abfragen verwenden können.
Unzulässige Felder
Die folgenden Felder können in der SELECT
-Klausel nicht verwendet werden:
- Nicht auswählbare Felder, also Felder mit den
Selectable
-Metadaten -Attribut alsfalse
gekennzeichnet. - Wiederkehrende Felder, also Felder mit dem Metadatenattribut
Repeated
gekennzeichnet alstrue
. - Felder, die für die angegebene Ressource in der
FROM
-Klausel nicht verfügbar sind. Attribute einiger Ressourcen können nicht zusammen ausgewählt werden. Nur einige Ressourcen eine Teilmenge aller Messwerte und Segmente verfügbar machen. - Inkompatible Segmente oder Messwerte. Weitere Informationen finden Sie unter Segmentierung. Informationen.
In der Referenzdokumentation finden Sie weitere Informationen zu Details dazu, wo diese Informationen zu den einzelnen Ressourcen zu finden sind.
FROM-Klausel
In der FROM
-Klausel wird Folgendes ausgeführt:
- Ist eine erforderliche Klausel für Abfragen,
SearchAds360Service
(sowohlSearch
- als auchSearchStream
-Methoden). - Sollte nicht für Abfragen an
SearchAds360FieldService
enthalten sein. - Gibt die Hauptressource an, die von der Abfrage zurückgegeben wird.
- Es kann nur eine Ressource angegeben werden.
- Definiert die Felder, die Sie in allen anderen Klauseln der Abfrage verwenden können.
Zugeordnete Ressourcen
Wenn zugeordnete Ressourcen verfügbar sind, werden sie implizit mit dem
Ressource, die Sie in der FROM
-Klausel angeben. Sie müssen nur ihre Attribute
SELECT
-Klausel hinzu, um die Werte zurückzugeben.
Diese Beispielabfrage gibt sowohl die Anzeigengruppen-ID als auch die Kampagnen-ID zurück,
campaign
ist eine zugeordnete Ressource der Ressource ad_group
.
SELECT
campaign.id,
ad_group.id
FROM ad_group
Feld resource_name
Das Feld resource_name
der Hauptressource in der FROM
-Klausel ist immer
zurückgegeben.
In dieser Beispielabfrage wird ad_group.resource_name
in die Antwort aufgenommen.
auch wenn sie in der Abfrage nicht explizit ausgewählt ist:
SELECT ad_group.id
FROM ad_group
Das Feld resource_name
einer zugeordneten Ressource ist
wird zurückgegeben, wenn mindestens ein Feld ausgewählt ist.
In dieser Beispielabfrage wird campaign.resource_name
im
Antwort, weil campaign.id
ausgewählt ist:
SELECT
campaign.id,
ad_group.id
FROM ad_group
WHERE-Klausel
In der WHERE
-Klausel wird Folgendes ausgeführt:
- Ist eine optionale Klausel in einer Abfrage.
- Gibt Bedingungen zum Filtern und Segmentieren der Daten für die Anfrage an.
Bedingungen folgen diesem Muster:
FIELD_NAME
OPERATOR
VALUE
(getrennt durch Leerzeichen). - Kann mehrere Bedingungen enthalten, die durch das Trennzeichen
AND
getrennt sind.
Diese Beispielabfrage zeigt, wie Sie mit der WHERE
-Klausel impressions
zurückgeben.
Messwerte für einen bestimmten Zeitraum:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Siehe Segmentierung finden Sie weitere Informationen zur Segmentierung von Suchberichten.
Weitere Informationen zur Angabe von Datumsangaben finden Sie unter Zeiträume. Bereiche in Ihren Abfragen.
Nach Feld „resource_name
“ filtern
Mit dem Feld resource_name
können Sie Daten filtern oder sortieren.
In dieser Beispielabfrage wird das Feld campaign.resource_name
zum Filtern der Ergebnisse verwendet
für eine bestimmte Kampagne:
SELECT
campaign.id,
campaign.name
FROM campaign
WHERE campaign.resource_name = 'customers/1234567/campaigns/987654'
Mehrere Bedingungen
Sie können mehrere Bedingungen kombinieren, um Ihre Daten zu filtern.
Bei dieser Beispielabfrage wird die Anzahl der clicks
-Messwerte für alle Kampagnen angefordert
mit impressions
Messwerten auf Mobilgeräten in den letzten 30 Tagen.
SELECT
campaign.id,
campaign.name,
segments.device,
metrics.clicks
FROM campaign
WHERE metrics.impressions > 0
AND segments.device = MOBILE
AND segments.date DURING LAST_30_DAYS
Siehe Segmentierung finden Sie weitere Informationen zur Segmentierung von Berichten.
Groß-/Kleinschreibung
Beim Filtern nach Stringwerten wird die standardmäßige Groß- und Kleinschreibung jedes Operators berücksichtigt. spielt eine wichtige Rolle bei der korrekten Filterung Ihrer Ergebnisse.
Die folgende Tabelle zeigt die standardmäßige Groß-/Kleinschreibung der einzelnen Operatoren.
Standardmäßige Groß-/Kleinschreibung | |
---|---|
=/!= |
Case sensitive |
IN/NOT IN |
Case sensitive |
LIKE/NOT LIKE |
Case insensitive |
CONTAINS (...) |
Case sensitive |
REGEXP_MATCH/NOT REGEXP_MATCH |
Case sensitive |
Mit dem (?i)
-Modifikator kannst du die Standardempfindlichkeit für
REGEXP_MATCH
und NOT REGEXP_MATCH
, damit die Groß- und Kleinschreibung nicht berücksichtigt wird. Beispiel:
SELECT campaign.id
FROM campaign
WHERE campaign.name REGEXP_MATCH "(?i).*test.*"
In der Referenz zur Abfragegrammatik finden Sie eine vollständige Liste der Operatoren, mit denen Sie Ihre Daten filtern können.
Zentrale Datumssegmente
Die folgenden Segmentfelder werden als zentrale Datumssegmente bezeichnet:
segments.date
, segments.week
, segments.month
, segments.quarter
und
segments.year
Sie können zentrale Datumssegmente in der WHERE
-Klausel verwenden, um ein Datum oder eine Uhrzeit anzugeben.
Punkt.
In dieser Beispielabfrage wird DURING LAST_30_DAYS
für das Feld segments.date
angegeben.
in der WHERE
-Klausel:
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Siehe Segmentierung > Zentrale Datumssegmente für detaillierte Informationen zur Verwendung wichtiger Datumssegmente.
Unzulässiges Filtern
Filtern ist nicht zulässig:
- Für nicht ausgewählte Segmentfelder, mit Ausnahme von wichtigen Datumssegmenten
- Für Felder eines beliebigen Nachrichtentyps, mit Ausnahme von Primitiven (z. B.
Int64Value
,StringValue
usw.). - Für Attribute von wiederkehrenden Feldern eines beliebigen Nachrichtentyps, mit Ausnahme von Primitiven
(z. B.
Int64Value
oderStringValue
).
ORDER BY-Klausel
In der ORDER BY
-Klausel wird Folgendes ausgeführt:
- Ist eine optionale Klausel in einer Abfrage.
- Gibt die Reihenfolge an, in der die Ergebnisse zurückgegeben werden. Die Reihenfolge folgt
Muster:
FIELD_NAME
ORDERING_OPTION
(durch ein Leerzeichen getrennt). - Es sind zwei Optionen möglich:
ASC
(aufsteigend) oderDESC
(absteigend). Standardwert ist aufsteigend.
Bei dieser Beispielabfrage werden die Kampagnen nach der Anzahl der Klicks in absteigender Reihenfolge sortiert. (absteigend):
SELECT
campaign.name,
metrics.clicks
FROM campaign
ORDER BY metrics.clicks DESC
Mehrere Bestellungen
Sie können in der ORDER BY
-Klausel mehrere Felder angeben, indem Sie ein durch Kommas getrenntes Feld verwenden
Liste. Die Ergebnisse werden in der Reihenfolge sortiert, die Sie in den
Abfrage.
Mit dieser Beispielabfrage werden Anzeigengruppendaten ausgewählt und die Ergebnisse in aufsteigender Reihenfolge sortiert Sie werden nach Kampagnenname und dann in absteigender Reihenfolge nach der Anzahl der Impressionen sortiert. dann in absteigender Reihenfolge nach Anzahl der Klicks:
SELECT
campaign.name,
ad_group.name,
metrics.impressions,
metrics.clicks
FROM ad_group
ORDER BY
campaign.name,
metrics.impressions DESC,
metrics.clicks DESC
Reihenfolge und Limit kombinieren
Sie können die ORDER BY
-Klausel in Kombination mit der LIMIT
-Klausel verwenden,
Verfeinern der Ergebnisse.
Diese Beispielabfrage gibt die fünf Kampagnen mit den meisten Impressionen in den letzten 30 Tagen:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 5
Verbotene Bestellung
Sortierung ist nicht zulässig:
- Nach Attributen nicht ausgewählter Ressourcen.
- Nach nicht ausgewählten Messwerten.
- Nach nicht ausgewählten Segmenten.
- Für diese Feldtypen gilt:
<ph type="x-smartling-placeholder">
- </ph>
MESSAGE
- Wiederkehrende Felder
- Attribute von wiederkehrenden Feldern.
LIMIT-Klausel
In der LIMIT
-Klausel wird Folgendes ausgeführt:
- Ist eine optionale Klausel in einer Abfrage.
- Ermöglicht Ihnen, die Anzahl der Ergebnisse zu begrenzen, die die Abfrage zurückgibt.
Diese Klausel ist beispielsweise nützlich, wenn Sie nur an einer Stichprobe oder Zusammenfassung der Ergebnisse.
Bei dieser Beispielabfrage ist die Gesamtzahl der Ergebnisse auf 50 begrenzt:
SELECT
campaign.name,
ad_group.name,
segments.device,
metrics.impressions
FROM ad_group
ORDER BY metrics.impressions DESC
LIMIT 50
PARAMETERS-Klausel
Mit der PARAMETERS
-Klausel können Sie Metaparameter für die Anfrage angeben.
Entwürfe einschließen
Mit dem Parameter include_drafts
wird gesteuert, ob Entwurfsentitäten in
die Ergebnisse. Der Standardwert ist false
. Legen Sie true
fest, um Entwurfselemente einzubeziehen.
Diese Beispielabfrage gibt sowohl Kampagnenentwürfe als auch normale Kampagnen zurück:
SELECT campaign.name
FROM campaign
PARAMETERS include_drafts=true
Nicht ausgewählte resource_name
weglassen
Mit dem Parameter omit_unselected_resource_names
können Sie Folgendes ausschließen:
resource_name
aller Ressourcen, die nicht explizit in Ihrem
SELECT
-Klausel angegeben werden. Der Standardwert ist false
. Wenn Sie diesen Parameter auf true
festlegen,
empfehlen, den Ressourcennamen der primären Ressource
und alle zugeordneten Ressourcen in der SELECT
-Klausel.
Diese Beispielabfrage gibt weder campaign.resource_name
noch den
customer.resource_name
-Feld, da diese nicht im SELECT
enthalten sind
Klausel:
SELECT
campaign.name,
customer.id
FROM campaign
PARAMETERS omit_unselected_resource_names = true
Diese Beispielabfrage gibt das Feld campaign.resource_name
zurück, da es
explizit in der SELECT
-Klausel angefordert werden:
SELECT
campaign.name,
campaign.resource_name
FROM campaign
PARAMETERS omit_unselected_resource_names = true
In Messwerten verwendete Währung ändern
Mit dem Parameter metrics_currency
können Sie die zu verwendende Währung angeben
wenn Sie einen Messwert berechnen, der in der SELECT
-Klausel enthalten ist.
Standardmäßig wird die Landeswährung für das Konto verwendet. Wenn Sie diese
müssen Sie den dreistelligen ISO 4217-Währungscode verwenden.
Beispiel: USD, EUR.
Diese Beispielabfrage gibt den Messwert „cost_micros“ in der Landeswährung des Konto.
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
Diese Beispielabfrage gibt den Messwert „cost_micros“ in chilenischen Pesos (CLP) zurück.
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
PARAMETERS metrics_currency = "CLP"