Abfrageergebnisse paginieren

Um Ergebnissätze mit vielen Zeilen zu verarbeiten, Die Center Query Language unterstützt die Paginierung. Es stehen zwei Parameter zur Verfügung, Paginierung in der reports.search-Anfrage steuern Text: page_size und page_token zusätzlich zu einem Ausgabefeld in der Antwort Text: next_page_token

Der Parameter page_size gibt die maximale Anzahl von Zeilen an, die in einer -Einzelanfrage. Wenn kein Wert angegeben ist, wird er automatisch auf die maximale Seitengröße festgelegt. von 1.000 Zeilen.

Der Parameter page_token gibt das Token der zurückzugebenden Seite an. Wenn nicht angegeben ist, wird die erste Seite zurückgegeben. Um eine nachfolgende Seite abzurufen, verwendet der Wert vom vorherigen reports.search-Aufruf als next_page_token empfangen sollte als page_token angegeben werden. Wenn page_token angegeben wird, werden alle anderen Parameter im Aufruf sollten mit dem vorherigen Aufruf übereinstimmen, der den page_token, um unerwartetes Verhalten zu vermeiden.

Beispiel:

SELECT
  segments
.offer_id,
  metrics
.impressions,
  metrics
.clicks,
  metrics
.ctr
FROM MerchantPerformanceView
WHERE segments.date BETWEEN '2021-12-01' AND '2021-12-31'

Angenommen, das Konto enthält 100.000 offer_ids und die page_size ist auf 200 eingestellt. Die Ergebnismenge enthält dann 200 ReportRow. -Objekte in der ersten Antwort zusammen mit einem next_page_token.

Um die nächsten 200 Zeilen abzurufen, senden Sie die Anfrage noch einmal mit derselben Seitengröße. Aktualisieren Sie jedoch den page_token der Anfrage auf den Wert der vorherigen Antwort next_page_token.

Hier ist ein Beispiel für einen Antworttext (die ersten fünf Ergebnisse plus der next_page_token):

{
 
"results": [
   
{
     
"segments": {
       
"offerId": "12345"
     
},
     
"metrics": {
       
"clicks": "0",
       
"impressions": "59",
       
"ctr": 0
     
}
   
},
   
{
     
"segments": {
       
"offerId": "12346"
     
},
     
"metrics": {
       
"clicks": "9625",
       
"impressions": "276695",
       
"ctr": 0.034785594246372356
     
}
   
},
   
{
     
"segments": {
       
"offerId": "12347"
     
},
     
"metrics": {
       
"clicks": "148",
       
"impressions": "22045",
       
"ctr": 0.0067135404853708325
     
}
   
},
   
{
     
"segments": {
       
"offerId": "12348"
     
},
     
"metrics": {
       
"clicks": "11",
       
"impressions": "1100",
       
"ctr": 0.01
     
}
   
},
   
{
     
"segments": {
       
"offerId": "12349"
     
},
     
"metrics": {
       
"clicks": "569",
       
"impressions": "62977",
       
"ctr": 0.0090350445400701838
     
}
   
},
   
...
 
],
 
"nextPageToken": "CMgB"
}