Customer Journey Analytics BI 拡張機能

NOTE
この節で説明する機能を使用するには、選択 パッケージまたはそれ以降のバージョンが必要です。 使用している Customer Journey Analytics パッケージが不明な場合は、管理者にお問い合わせください。

Customer Journey Analytics BI extension を使用すると、Customer Journey Analytics で定義したデータビューへの SQL アクセスが可能になります。データエンジニアやアナリストは、Power BI、Tableau Desktop またはその他のビジネスインテリジェンスツールやビジュアライゼーションツール(以降、BI ツールと呼びます)に精通している可能性があります。Customer Journey Analytics ユーザーが Analysis Workspace プロジェクトを作成する際に使用しているものと同じデータビューに基づいて、レポートおよびダッシュボードを作成できるようになりました。

Adobe Experience Platform クエリサービスは、Experience Platform のデータレイクで使用可能なデータへの SQL インターフェイスです。Customer Journey Analytics BI extension を有効にすると、Query Service の機能が拡張され、Customer Journey Analytics データビューを Query Service セッションのテーブルまたはビューとして表示できるようになります。その結果、Query Service を PostgresSQL インターフェイスとして使用するビジネスインテリジェンスツールは、この拡張機能のメリットをシームレスに受けられます。

主なメリットは次のとおりです。

  • BI ツール自体内で Customer Journey Analytics データビューの同等の表示域を再作成する必要はありません。
    再作成する必要がある項目を理解するためのデータビューの機能について詳しくは、データビューを参照してください。
  • BI ツールと Customer Journey Analytics 間のレポートと分析の一貫性が向上します。
  • Customer Journey Analytics データを、BI ツールで既に使用可能な他のデータソースと組み合わせます。

前提条件

この機能を使用するには、有効期限のある資格情報または無期限の資格情報を使用して、BI ツールを Customer Journey Analytics BI extension に接続できます。資格情報ガイドでは、有効期限のある資格情報または無期限の資格情報の設定について詳しく説明します。
CJA 権限を設定するための追加手順を以下に示します

資格情報の期限切れ

有効期限のある資格情報を使用するには、次の操作を実行します。

  • Experience Platform と Customer Journey Analytics へのアクセス権を付与します。
  • 製品管理者に Customer Journey Analytics へのアクセス権を付与して、接続とデータビューを表示、編集、更新または削除できるようにします。

または、次の操作を実行します。

  • アクセスするデータビューへのアクセス権を付与します。
  • Customer Journey Analytics BI 拡張機能へのアクセス権を付与します。

無期限の資格情報

無期限の資格情報を使用するには:

  • 無期限の資格情報を Experience Platform に作成します。
  • 有効期限のある資格情報に記載されている手順に従って、無期限の資格情報へのアクセス権を付与します。

詳しくは、カスタマージャーニーのアクセス制御を参照してください。特に、製品管理者の追加の権限Adobe Admin Console の Customer Journey Analytics 権限を参照してください。

使用状況

Customer Journey Analytics BI extension 機能を使用するには、SQL を直接使用することも、特定の BI ツールで使用可能なドラッグ&ドロップエクスペリエンスを使用することもできます。

SQL

この機能は、クエリエディターまたは標準の PostgreSQL コマンドラインインターフェイス(CLI)クライアントを使用して SQL 文で直接使用できます。

クエリ編集者

Adobe Experience Platform の場合:

  1. 左側のパネルの​ ​データ管理​ ​から「​クエリ​」を選択します。

  2. クエリを作成 ​クエリを作成​ を選択します。

  3. データベース ​ドロップダウンメニューのデータベースのリストから、サンドボックスの cja データベースを選択します。例:prod:cja

  4. クエリを実行するには、SQL 文を入力し、 再生 ボタンを選択します(または [SHIFT] + [ENTER] キーを押します)。

PostgreSQL CLI
  1. Adobe Experience Platform で PostgresQL 資格情報を検索してコピーします。

    1. 左側のパネル(​データ管理​ ​の下)から「​クエリ​」を選択します。

    2. 上部のバーから「​資格情報​」を選択します。

    3. データベース ​ドロップダウンメニューのデータベースのリストから、サンドボックスの cja データベースを選択します。例:prod:cja

    4. コマンド文字列をコピーするには、「​ PSQL コマンド​」セクションの コピー を使用します。

  2. コマンドウィンドウまたはターミナルウィンドウを開きます。

  3. ログインしてクエリの実行を開始するには、ターミナルにコマンド文字列をペーストします。

詳しくは、クエリエディター UI ガイドを参照してください。

BI ツール

現在、Customer Journey Analytics BI extension は、以下に示すツールでサポートおよびテストされています。PSQL インターフェイスを使用する他の BI ツールも同様に機能する可能性がありますが、まだ正式にはサポートされていません。

Power BI
  1. Adobe Experience Platform で PostgresSQL 資格情報の詳細を参照します。

    1. 左側のパネル(​データ管理​ ​の下)から「​クエリ​」を選択します。

    2. 上部のバーから「​資格情報​」を選択します。

    3. データベース ​ドロップダウンメニューのデータベースのリストから、サンドボックスの cja データベースを選択します。例:prod:cja

    4. Power BI で必要に応じて コピー を使用して、PostgreSQL 資格情報の各パラメーター(ホスト、ポート、データベース、ユーザー名など)をコピーします。

  2. Power BI の場合:

    1. メインウィンドウで、上部のツールバーから「​データを取得​」を選択します。

    2. 左側のパネルで「その他…」を選択します。

    3. データを取得 ​画面で PostgresSQL を検索し、リストから 「​ PostgreSQL データベース​」を選択します。

    4. ​ PostgreSQL データベース​ ​ダイアログの場合:

      1. Experience Platform クエリ資格情報の​ ​ホスト​ ​パラメーターを「​サーバー​」テキストフィールドにペーストします。

      2. Experience Platform クエリ資格情報の​ ​データベース​ ​パラメーターを「​データベース​」テキストフィールドにペーストします。

        ?FLATTEN を​ ​データベース​ ​パラメーターに追加すると、例えば、prod:cja?FLATTEN のように読み込まれます。詳しくは、サードパーティの BI ツールで使用するネストされたデータ構造のフラット化を参照してください。

      3. データ接続 ​モードを求められたら、「直接クエリ」を選択します。

      4. ユーザー名 ​と​ パスワード ​の入力を求められます。Experience Platform クエリ資格情報の同等のパラメーターを使用します。

    5. ログインに成功すると、Power BI の​ ​ナビゲーター​ ​に Customer Journey Analytics データビューテーブルが表示されます。

    6. 使用するデータビューテーブルを選択し、「​読み込み​」を選択します。

    選択した 1 つ以上のテーブルに関連付けられたすべてのディメンションと指標が右側のパネルに表示され、ビジュアライゼーションで使用できるようになります。

    詳しくは、クエリサービスへの Power BI の接続を参照してください。例について詳しくは、BI 拡張機能のユースケースも参照してください。

Tableau Desktop
  1. Adobe Experience Platform で PostgresSQL 資格情報の詳細を参照します。

    1. 左側のパネル(​データ管理​ ​の下)から「​クエリ​」を選択します。

    2. 上部のバーから「​資格情報​」を選択します。

    3. データベース ​ドロップダウンメニューのデータベースのリストから、サンドボックスの cja データベースを選択します。例:prod:cja

    4. Tableau Desktop で必要に応じて コピー を使用して、PostgreSQL 資格情報の各パラメーター(ホスト、ポート、データベース、ユーザー名など)をコピーします。

  2. Tableau Desktop の場合:

    1. 左側のパネルの​ ​サーバーへ​ ​から「​その他​」を選択します。

    2. リストから「​ PostgreSQL ​」を選択します。

    3. PostgreSQL ダイアログの場合:

      1. Experience Platform クエリ資格情報の​ ​ホスト​ ​パラメーターを「​サーバー​」テキストフィールドにペーストします。

      2. Experience Platform クエリ資格情報の​ ​ポート​ ​パラメーターを「​ポート​」テキストフィールドにペーストします。

      3. Experience Platform クエリ資格情報の​ ​データベース​ ​パラメーターを「​データベース​」テキストフィールドにペーストします。

        %3FFLATTEN を​ ​データベース​ ​パラメーターに追加すると、例えば、prod:cja%3FFLATTEN のように読み込まれます。詳しくは、サードパーティの BI ツールで使用するネストされたデータ構造のフラット化を参照してください。

      4. ​認証​ ​リストから​ ​ユーザー名とパスワード​ ​を選択します。

      5. Experience Platform クエリ資格情報の​ ​ユーザー名​ ​パラメーターを「​ユーザー名​」テキストフィールドにペーストします。

      6. Experience Platform クエリ資格情報の​ ​パスワード​ ​パラメーターを「​パスワード​」テキストフィールドにペーストします。

      7. ​ログイン​」を選択します。

    4. Customer Journey Analytics データビューは、​テーブル​ ​リストにテーブルとして表示されます。

    5. 使用するテーブルをキャンバス上でドラッグします。

    これで、データビューテーブルのデータを操作して、レポートとビジュアライゼーションを作成できます。

    詳しくは、クエリサービスへの Tableau の接続を参照してください。例について詳しくは、BI 拡張機能のユースケースも参照してください。

Looker
  1. Adobe Experience Platform で PostgresSQL 資格情報の詳細を参照します。

    1. 左側のパネル(​データ管理​ ​の下)から「​クエリ​」を選択します。

    2. 上部のバーから「​資格情報​」を選択します。

    3. データベース ​ドロップダウンメニューのデータベースのリストから、サンドボックスの cja データベースを選択します。例:prod:cja

    4. Looker で必要に応じて コピー を使用して、PostgreSQL 資格情報の各パラメーター(ホスト、ポート、データベース、ユーザー名など)をコピーします。

  2. Looker の場合:

    1. 左側のパネルから「管理」を選択します。
    2. 接続」を選択します。
    3. 接続を追加」を選択します。
    4. データベースを Looker に接続 ​画面で、新しい接続を設定する際に適切な値をペーストします。ダイアレクトとして PostgreSQL 9.5 以降 ​を選択します。
    5. テスト」を選択して、接続をテストします。
    6. 成功したら、「更新」を選択して、接続を保存します。

    これで、データビューテーブルのデータを操作して、レポートとビジュアライゼーションを作成できます。

    詳しくは、クエリサービスへの Looker の接続を参照してください。例について詳しくは、BI 拡張機能のユースケースも参照してください。

Jupyter Notebook
  1. Adobe Experience Platform で PostgresSQL 資格情報の詳細を参照します。

    1. 左側のパネル(​データ管理​ ​の下)から「​クエリ​」を選択します。

    2. 上部のバーから「​資格情報​」を選択します。

    3. データベース ​ドロップダウンメニューのデータベースのリストから、サンドボックスの cja データベースを選択します。例:prod:cja

    4. Jupyter Notebook で必要に応じて コピー を使用して、PostgreSQL 資格情報の各パラメーター(ホスト、ポート、データベース、ユーザー名など)をコピーします。

  2. Jupyter Notebook の場合:

    1. 必要なライブラリを使用していることを確認します。
    2. 接続を設定して実行する際は、適切な値を使用します。
    3. 関連するクエリを実行して、接続をテストします。

    成功したら、データを操作して、レポートとビジュアライゼーションを作成できます。

    詳しくは、クエリサービスへの Jupyter Notebook の接続を参照してください。例について詳しくは、BI 拡張機能のユースケースも参照してください。

RStudio
  1. Adobe Experience Platform で PostgresSQL 資格情報の詳細を参照します。

    1. 左側のパネル(​データ管理​ ​の下)から「​クエリ​」を選択します。

    2. 上部のバーから「​資格情報​」を選択します。

    3. データベース ​ドロップダウンメニューのデータベースのリストから、サンドボックスの cja データベースを選択します。例:prod:cja

    4. Jupyter Notebook で必要に応じて コピー を使用して、PostgreSQL 資格情報の各パラメーター(ホスト、ポート、データベース、ユーザー名など)をコピーします。

  2. RStudio の場合:

    1. 必要なライブラリを使用していることを確認します。
    2. 接続を設定して実行する際は、適切な値を使用します。
    3. 関連するクエリを実行して、接続をテストします。

    成功したら、データを操作して、レポートとビジュアライゼーションを作成できます。

    詳しくは、クエリサービスへの RStudio の接続を参照してください。例(代わりに RPostgres パッケージを使用)について詳しくは、BI 拡張機能のユースケースも参照してください。

使用可能な様々なツールの概要と詳細情報については、クエリサービスへのクライアントの接続を参照してください。

Customer Journey Analytics BI 拡張機能を使用して様々なユースケースを達成する方法について詳しくは、ユースケースを参照してください。

機能

デフォルトでは、データビューには、わかりやすい名前から生成されたテーブルセーフ名が付けられます。例えば、マイ web データビューという名前のデータビューのビュー名は my_web_data_view です。データビューの BI ツールで使用する優先名を定義できます。詳しくは、データビュー設定を参照してください。

データビュー ID をテーブル名として使用する場合は、接続時にデータベース名にオプションの CJA_USE_IDS 設定を追加できます。例えば、prod:cja?CJA_USE_IDS は、dv_ABC123 のような名前でデータビューを表示します。

データガバナンス

Customer Journey Analytics のデータガバナンス関連の設定は、Adobe Experience Platform から継承されます。Customer Journey Analytics と Adobe Experience Platform のデータガバナンスの統合により、機密性の高い Customer Journey Analytics データのラベル付けとプライバシーポリシーの実施が可能になります。

Experience Platform で使用されるデータセットに関して作成されたプライバシーラベルおよびポリシーは、Adobe Customer Journey Analytics データビューワークフローで表示できます。したがって、Customer Journey Analytics BI extension を使用してクエリされたデータは、定義されたプライバシーラベルとポリシーに準拠していない場合、適切な警告またはエラーを表示します。

データビューのリスト

標準の PostgreSQL CLI では、\dv を使用してビューをリストできます

prod:all=> \dv
                       List of relations
 Schema |                    Name                    | Type |  Owner
--------+--------------------------------------------+------+----------
 public | my_web_data_view                           | view | postgres
 public | my_mobile_data_view                        | view | postgres

ネスト化とフラット化

デフォルトでは、データビューのスキーマは、元の XDM スキーマと同様に、ネストされた構造を使用します。また、この統合では、FLATTEN オプションもサポートされています。このオプションを使用すると、データビュー(およびセッション内の他のテーブル)のスキーマを強制的にフラット化できます。フラット化により、構造化スキーマをサポートしていない BI ツールでも簡単に使用できるようになります。詳しくは、クエリサービスでのネストされたデータ構造の操作を参照してください。

デフォルトと制限

BI 拡張機能を使用する場合、次の追加のデフォルトと制限が適用されます。

  • BI 拡張機能には、クエリ結果の行制限が必要です。デフォルトは 50 ですが、SQL で LIMIT n を使用して上書きできます。n は 1~50000 です。

  • BI 拡張機能には、計算に使用する行を制限するために日付範囲が必要です。デフォルトは過去 30 日間ですが、特別な timestamp 列または daterange 列を使用して、SQL WHERE 句で上書きできます。

  • BI 拡張機能には、集約クエリが必要です。 SELECT * FROM ... のような SQL を使用して、生の基になる行を取得できません。大まかに言うと、集計クエリでは以下を使用する必要があります。

    • SUMCOUNT を使用して合計を選択します。
      例:SELECT SUM(metric1), COUNT(*) FROM ...

    • ディメンション別に分類された指標を選択します。
      例:SELECT dimension1, SUM(metric1), COUNT(*) FROM ... GROUP BY dimension1

    • 個別の指標値を選択します。
      例:SELECT DISTINCT dimension1 FROM ...

      詳しくは、サポートされる SQL を参照してください。

サポートされる SQL

サポートされている SQL のタイプの完全なリファレンスについては、クエリサービス SQL リファレンスを参照してください。

使用可能な SQL の例については、次の表を参照してください。

table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 layout-auto
パターン
スキーマの検出
code language-none
SELECT * FROM dv1 WHERE 1=0
ランク付けまたは分類
code language-none
SELECT dim1, SUM(metric1) AS m1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
GROUP BY dim1
code language-none
SELECT dim1, SUM(metric1) AS m1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02' AND
  filterId = '12345'
GROUP BY dim1
code language-none
SELECT dim1, SUM(metric1) AS m1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02' AND
  AND (dim2 = 'A' OR dim3 IN ('X', 'Y', 'Z'))
GROUP BY dim1
HAVING
code language-none
SELECT dim1, SUM(metric1) AS m1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
GROUP BY dim1
HAVING m1 > 100
個別、上 ディメンション値
code language-none
SELECT DISTINCT dim1 FROM dv1
code language-none
SELECT dim1 AS dv1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
GROUP BY dim1
code language-none
SELECT dim1 AS dv1
FROM dv1
WHERE `timestamp` >= '2022-01-01' AND `timestamp` < '2022-01-02'
GROUP BY dim1
ORDER BY SUM(metric1)
LIMIT 15
指標の合計値
code language-none
SELECT SUM(metric1) AS m1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
複数ディメンション 分類 と top-distincts
code language-none
SELECT dim1, dim2, SUM(metric1) AS m1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
GROUP BY dim1, dim2
code language-none
SELECT dim1, dim2, SUM(metric1) AS m1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
GROUP BY 1, 2
ORDER BY 1, 2
code language-none
SELECT DISTINCT dim1, dim2
FROM dv1
副選択: フィルターの追加 件の結果
code language-none
SELECT dim1, m1
FROM (
  SELECT dim1, SUM(metric1) AS m1
  FROM dv1
  WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
 DIM1 でグループ化
)
WHERE dim1 in ('A', 'B')
副選択: でのクエリ データビュー
code language-none
SELECT key, SUM(m1) AS total
FROM (
  SELECT dim1 AS key, SUM(metric1) AS m1
  FROM dv1
  WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
  GROUP BY dim1


  UNION


  SELECT dim2 AS key, SUM(m1) AS m1
  FROM dv2
  WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
  GROUP BY dim2
)
GROUP BY key
ORDER BY total
副選択: 階層型ソース、 フィルター、 および集計

サブセレクトを使用してレイヤ化:

code language-none
SELECT rows.dim1, SUM(rows.m1) AS total
FROM (
  SELECT _.dim1,_.m1
  FROM (
    SELECT * FROM dv1
    WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
  ) _
  WHERE _.dim1 in ('A', 'B', 'C')
) rows
GROUP BY 1
ORDER BY total

CTE と次を使用するレイヤー:

code language-none
WITH rows AS (
  WITH _ AS (
    SELECT * FROM data_ares
    WHERE `timestamp` BETWEEN '2021-01-01' AND '2021-02-01'
  )
  SELECT _.item, _.units FROM _
  WHERE _.item IS NOT NULL
)
SELECT rows.item, SUM(rows.units) AS units
FROM rows WHERE rows.item in ('A', 'B', 'C')
GROUP BY rows.item
は、 指標が次の値より前 またはと混合される ディメンション
code language-none
SELECT SUM(metric1) AS m1, dim1
FROM dv1
WHERE `timestamp` BETWEEN '2022-01-01' AND '2022-01-02'
GROUP BY 2

ディメンション

デフォルトで使用可能なディメンションや、データビューで定義されたディメンションを選択できます。ID でディメンションを選択します。

指標

選択できる指標は次のとおりです。

  • デフォルトで使用可能な指標。
  • データビューで定義する指標。
  • ユーザーにアクセス権があるデータビューと互換性のある計算指標。

他の SQL ソースの場合と同様に、SUM(metric) 式に含まれる ID で指標を選択します。

以下が可能です:

  • SELECT COUNT(*) または COUNT(1) を使用して、発生件数指標を取得する。
  • SELECT COUNT(DISTINCT dimension) または SELECT APPROX_COUNT_DISTINCT(dimension) を使用して、ディメンションの個別概算値をカウントする。詳しくは、個別値のカウントを参照してください。
  • インライン計算を使用して、即座に指標を組み合わせたり、計算を行ったりする。

個別値のカウント

Customer Journey Analytics の仕組みの基本的な性質により、正確な個別のカウントを取得できる唯一のディメンションは、adobe_personid ディメンションです。次の SQL 文である SELECT COUNT(DISTINCT adobe_personid) または SELECT APPROX_COUNT_DISTINCT(adobe_personid) は、個別の人物の数であるデフォルトのユーザー指標の値を返します。その他のディメンションの場合は、おおよその個別のカウントが返されます。

条件付き指標

SUM 関数または COUNT 関数に IF 句または CASE 句を埋め込むと、選択した指標に固有のセグメント化を追加できます。 これらの句を追加する方法は、Workspaceのレポートテーブルで指標列にセグメントを適用する場合と似ています。

例:

SUM(IF(dim1 = 'X' AND dim2 = 'A', metric1, 0)) AS m1
SUM(CASE WHEN dim1 = 'X' AND dim2 = 'A' THEN metric1 END) AS m1

インライン計算

SELECT で指標式に追加の計算を適用できます。この計算は、計算指標で計算を定義する代わりに使用できます。次の表に、サポートされる式のタイプを示します。

演算子または関数
詳細
+-*/ および %
加算、減算、乗算、除算、剰余演算
-X または+X
符号または指標の変更(X は指標式)
PI()
π 定数
POSITIVENEGATIVEABSFLOORCEILCEILINGEXPLNLOG10LOG1PSQRTCBRTDEGREESRADIANSSINCOSTANACOSASINATANCOSHSINH および TANH
単項数学関数
MOD, POW, POWER, ROUND, LOG
二項数学関数

特殊列

タイムスタンプ

timestamp 特殊列は、クエリの日付範囲を指定するために使用されます。日付範囲は、BETWEEN 式または timestamp >>=<<= チェックの AND を組み合わせて定義できます。
timestamp はオプションで、全範囲を指定しない場合は、デフォルトが使用されます。

  • 最小値のみを指定している場合(timestamp > X または timestamp >= X)、範囲は X から現在までです。
  • 最大値のみを指定している場合(timestamp < X または timestamp <= X)、範囲は X-30 日から X です。
  • 何も指定しない場合、範囲は現在-30 日から現在までです。

タイムスタンプ範囲は、RankRequest の日付範囲グローバルセグメントに変換されます。
また、タイムスタンプフィールドを日時関数で使用して、イベントのタイムスタンプを解析したり切り捨てたりすることもできます。

日付範囲

daterange の特別な列は timestamp と同様に機能しますが、セグメント化は 1 日に制限されます。 daterange もオプションで、timestamp と同じ範囲のデフォルトが設定されます。
また、daterange フィールドを日時関数で使用して、イベントの日付を解析したり切り捨てたりすることもできます。

daterangeName 特別列は、Last Quarter のような名前付き日付範囲を使用してクエリをセグメント化するために使用できます。

NOTE
Power BI は、1 日未満の daterange 指標(時間、30 分、5 分など)をサポートしていません。

Segment ID

filterId の特別な列はオプションで、外部で定義されたセグメントをクエリに適用するために使用されます。 外部で定義されたセグメントをクエリに適用することは、Workspaceのパネル上でセグメントをドラッグすることに似ています。 複数のセグメント ID を使用する場合は、AND を付けます。

filterId と共に filterName を使用して、ID の代わりにセグメントの名前を使用できます。

Where 句

WHERE 句は、次の 3 つの手順で処理されます。

  1. timestampdaterange または daterangeName の特殊フィールドから日付範囲を見つけます。

  2. セグメントに含める、外部で定義された filterId または filterName を見つけます。

  3. 残りの式をアドホックセグメントに変換します。

この処理は、WHERE 句の最初のレベルの AND を解析することによって行われます。最上位の各 AND 式は、上記のいずれかと一致する必要があります。AND の最初のレベルより深いもの、または WHERE 句で OR を最上位レベルで使用する場合は、アドホックセグメントとして処理されます。

並べ替え順序

デフォルトでは、クエリは最初に選択された指標によって結果を降順に並べ替えます。ORDER BY ... ASC または ORDER BY ... DESC を指定すると、デフォルトの並べ替え順序を上書きできます。ORDER BY を使用する場合は、最初に選択した指標に対して ORDER BY を指定する必要があります。

指標の前に -(マイナス)を使用して順序を入れ替えることもできます。次の 2 つの文の順序は同じになります。

ORDER BY metric1 ASC
ORDER BY -metric1 DESC

一般的な関数のサポート

関数
詳細
キャスト
CAST(`timestamp` AS STRING) または
`timestamp`::string
型キャストは現在サポートされていませんが、エラーはスローされません。CAST 関数は無視されます。
タイムスタンプ
WHERE `timestamp` >= TIMESTAMP('2022-01-01 00:00:00') AND `timestamp` < TIMESTAMP('2022-01-02 00:00:00')
WHERE 句内で使用するタイムスタンプとして時刻文字列を解析します。
終了タイムスタンプ
WHERE `timestamp` >= TO_TIMESTAMP('01/01/2022', 'MM/dd/yyyy') AND `timestamp` < TO_TIMESTAMP('01/02/2022', 'MM/dd/yyyy')
時刻文字列を WHERE 句内で使用するタイムスタンプとして解析し、オプションでその時刻文字列の形式を指定します。
日付
WHERE `timestamp` >= DATE('2022-01-01') AND `timestamp` < DATE('2022-01-02')
WHERE 句内で使用するために、日付文字列をタイムスタンプとして解析します。
終了日
WHERE `timestamp` >= TO_DATE('01/01/2022', 'MM/dd/yyyy') AND `timestamp` < TO_DATE('01/02/2022', 'MM/dd/yyyy')
日付文字列を WHERE 句内で使用するタイムスタンプとして解析し、オプションでその日付文字列の形式を指定します。

ディメンション関数のサポート

以下の関数は、SELECTWHERE 句または条件付き指標のディメンションで使用できます。

文字列関数

関数
詳細
下位
SELECT LOWER(name) AS lower_name
渡されたフィールドで動的ディメンション ID を生成します。

日時関数

関数
詳細
SELECT YEAR(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
SELECT MONTH(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
SELECT DAY(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
曜日
SELECT DAYOFWEEK(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。わかりやすい名前ではなく数値が必要なので、値の代わりに項目 ID を使用します。
年間通算日
SELECT DAYOFYEAR(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
SELECT WEEK(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
四半期
SELECT QUARTER(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
時間
SELECT HOUR(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。わかりやすい名前ではなく数値が必要なので、値の代わりに項目 ID を使用します。
SELECT MINUTE(`timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
エクストラクト
SELECT EXTRACT(MONTH FROM `timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。この関数の一部では、わかりやすい名前ではなく数値が必要なので、値の代わりに項目 ID を使用します。
サポートされる一部は次のとおりです。
- キーワード:YEARMONTHDAYOFMONTHDAYOFWEEKDAYOFYEARWEEKQUARTERHOURMINUTE
- 文字列:'YEAR''Y''MONTH''M''DAYOFMONTH''DAY''D''DAYOFWEEK''DOW''DAYOFYEAR''DOY''WEEK''WOY'W''QUARTER''QOY''Q''HOUR' または 'MINUTE'
日付(一部)
SELECT DATE_PART('month', `timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。この関数の一部では、わかりやすい名前ではなく数値が必要なので、値の代わりに項目 ID を使用します。
サポートされる文字列部分は次のとおりです。'YEAR''Y''MONTH''M''DAYOFMONTH''DAY''D''DAYOFWEEK''DOW''DAYOFYEAR''DOY''WEEK''WOY'W''QUARTER''QOY''Q''HOUR' または 'MINUTE'
日付(切り捨て)
SELECT DATE_TRUNC('quarter', `timestamp`)
渡されたフィールドで動的ディメンション ID を生成します。
サポートされる文字列の精度は次のとおりです。'YEAR''Y''MONTH''M''DAYOFMONTH''DAY''D''DAYOFWEEK''DOW''DAYOFYEAR''DOY''WEEK''WOY'W''QUARTER''QOY''Q''HOUR' または 'MINUTE'

部分的なサポート

一部の SQL 機能は、BI 拡張機能では部分的にのみサポートされており、他のデータベースで表示されるのと同じ結果を返しません。この特定の機能は、BI 拡張機能に完全に一致するものがない様々な BI ツールで生成した SQL で使用されます。その結果、BI 拡張機能は、エラーをスローすることなく最小限の BI ツールの使用を対象とする限定的な実装に焦点を当てています。詳しくは、以下の表を参照してください。

関数
詳細
最小値() と最大値()
MIN(daterange) または
MAX(daterange)
timestampdaterangedaterangeday などの daterangeX のいずれかに MIN() を実行すると、2 年前が返されます。

timestampdaterangedaterangeday などの daterangeX のいずれかに MAX() を実行すると、現在の日付/時刻が返されます。他のディメンション、指標、式に対する

MIN() または MAX() は 0 を返します。
recommendation-more-help
080e5213-7aa2-40d6-9dba-18945e892f79