結果の並べ替えと結果数の制限

結果の並べ替え

ORDER BY 句を使用して、レスポンス内の行の順序を指定できます。これは、次の 1 つ以上のカンマ区切りのシーケンスで構成されます。

FieldName ('ASC' | 'DESC')?

フィールド名の後に ASCDESC を指定しない場合、デフォルトで ASC になります。

次の ORDER BY 句は、インプレッションを降順、キャンペーン名を昇順で、キャンペーン単位のレポートを並べ替えます。

ORDER BY metrics.impressions DESC, campaign.name ASC

次の条件での並べ替えは許可されていません。

  • 選択されていないリソースの属性別
  • 選択されていない指標別
  • 選択されていないセグメント別
  • 次のタイプのフィールドの場合:
    • MESSAGE
    • 繰り返しフィールド
    • 繰り返しフィールドの属性

結果数を制限する

LIMIT 句を使用して、返される結果の合計数を制限できます。これを結果の順序付けと組み合わせることで、「上位 N 件」のレポートを作成できます。たとえば、過去 30 日間でインプレッション数が最も高かった 5 つのキャンペーンを含むレポートを作成できます。

SELECT
  campaign.id,
  campaign.name,
  metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 5

次のフィルタは許可されていません。

  • 選択していないセグメント([コア] 日付セグメント フィールドを除く)
    • 主要な日付セグメント フィールドは、segments.datesegments.weeksegments.monthsegments.quartersegments.year です。
  • プリミティブ以外のメッセージ タイプのフィールド(例:Int64Value、StringValue など)
  • プリミティブ以外のメッセージ タイプの繰り返しフィールドの属性(例:Int64Value、StringValue など)