📣新登場!TiDB Cloud BYOC、TiDB Cloud Filesystem、PostgreSQL-compatible TiDB Cloud Starter がパブリックプレビュー中。このページは自動翻訳されたものです。原文はこちらからご覧ください。

RETENTION



集計関数

RETENTION() 関数は、イベントに対して特定の条件が満たされたかどうかを示す UInt8 型の条件を、1 個から 32 個まで引数として受け取ります。

任意の条件を引数として指定できます(WHERE と同様)。

最初の条件を除き、各条件はペアとして適用されます。2 番目の結果は 1 番目と 2 番目の条件がともに真の場合に真となり、3 番目の結果は 1 番目と 3 番目の条件がともに真の場合に真となります。以下同様です。

構文

RETENTION( <cond1> , <cond2> , ..., <cond32> );

引数

引数説明
<cond>Boolean の結果を返す式

戻り値の型

1 または 0 の配列です。

例

テーブルを作成してサンプルデータを挿入します

CREATE TABLE user_events ( id INT, user_id INT, event_date DATE, event_type VARCHAR ); INSERT INTO user_events (id, user_id, event_date, event_type) VALUES (1, 1, '2022-01-01', 'signup'), (2, 1, '2022-01-02', 'login'), (3, 2, '2022-01-01', 'signup'), (4, 2, '2022-01-03', 'purchase'), (5, 3, '2022-01-01', 'signup'), (6, 3, '2022-01-02', 'login');

クエリデモ: サインアップ、ログイン、購入イベントに基づくユーザー維持率の計算

SELECT user_id, RETENTION(event_type = 'signup', event_type = 'login', event_type = 'purchase') AS retention FROM user_events GROUP BY user_id;

結果

| user_id | retention | |---------|-----------| | 1 | [1, 1, 0] | | 2 | [1, 0, 1] | | 3 | [1, 1, 0] |

このページは役に立ちましたか?