menu
Is this helpful?

# 動的パラメーター利用説明

動的パラメーターは、SQLコードの内容の一部を動的調整することを対応します。実際の計算中に、動的パラメーターの値がクエリコードに取り込まれ、使用された変数 ${パラメータタイプ: パラメーター名} が置き換えられます。 レポートを保存する際に、パラメーターは現在の動的パラメーターの値がデフォルトとして保存されます。

動的パラメーターを使用し、複数回使用される複雑なSQLコードを管理できます。また、動的パラメーターを使用し、レポートの閲覧者が特定の範囲内でクエリコードを変更できるようにすることもできます。

# 可変コンテンツ

可変コンテンツの動的パラメーターは、特定の時間またはカスタム入力値の選択を対応しており、計算中に直接置き換えることができます。

例えば、TOP Nをコインの量でランク付けする場合、可変コンテンツにNを表すことができ、利用メンバーは複数のレポートを保存することなく、必要に応じて上位 10、上位 100、または上位 1000 人のユーザーの詳細を引き出すことができます。

SELECT * FROM
ta.v_user_2
ORDER BY "coin_sum" DESC
LIMIT ${Variable1} 

DANGER

データセキュリティのため、元のクエリコードで使用されていないテーブルは可変コンテンツに表示できません。

# イベント時間

イベント時間の動的パラメータを使用し、分析期間内のイベントデータをすばやくフィルターできます。

例えば、SQLレポートは、過去7日間のユーザーの累積課金額でランク付けする必要があります。動的パラメーターを追加し、動的な時間範囲を選択できます。クエリ時は、当日を基準に過去7日間の課金イベントを計算します。

SELECT
  "#user_id"
, sum("count") count_sum
FROM
  v_event_2
WHERE (("$part_event" = 'recharge') AND (${PartDate:date1}))
GROUP BY "#user_id"
ORDER BY count_sum desc
LIMIT 10

プロジェクトで複数のタイムゾーンが有効になっている場合は、さらにイベント時間パラメーター「タイムゾーンオフセットの影響を受ける」を選択できます。タイムゾーンの影響を受ける動的パラメーターは表示タイムゾーンに対するイベント発生日のオフセットに基づいて計算されます。("$part_date_with_timezone""$part_date" に基づくフィルターではなく、他のモデルロジックと一致します。

この動的パラメーターは、現在のプロジェクトのイベントテーブルに対してのみ有効であり、SQLレポート内の他のプロジェクトのイベントテーブルには影響しないことに注意してください。

# 式(数値、文字列、時間)

数値、文字列、時間の3種類のフィールドをフィルターする場合、式の動的パラメーターを使用して柔軟に構成できます。

例えば、ユーザープロパティの累積課金額が数値である場合、クエリコードに数値式を挿入すると、レポート閲覧者で、累積課金額が特定の範囲内または特定の数値を超えるユーザーをフィルター処理できます。

SELECT * FROM
ta.v_user_2
WHERE "coin_num" ${Number:number1} 
LIMIT 10

# 選択肢

動的パラメーターを選択することにより、事前に準備されたSQLコードに異なるオプション名を設定できます。 閲覧者は名前に従って選択するだけでよく、対応するSQLコードが動的パラメーターを自動的に置き換えます。

例えば、ユーザーをレベル間隔に従ってタイプに分類できます。レポート閲覧者はユーザーの詳細をタイプ別にすばやく表示したいと考えています。簡単に選択できるように、レベル間隔のフィルターリングコードに名前を設定できます。

SELECT * FROM
ta.v_user_2
WHERE "user_level" ${Selector:selector2} 
LIMIT 10